<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Jevi</title>
    <description>The latest articles on DEV Community by Jevi (@jevimartinez).</description>
    <link>https://dev.to/jevimartinez</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3745713%2Fe21fbbbb-8bfa-483b-9c12-6e91ac151f7b.png</url>
      <title>DEV Community: Jevi</title>
      <link>https://dev.to/jevimartinez</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/jevimartinez"/>
    <language>en</language>
    <item>
      <title>Why I Turned My Portfolio into an Operating System</title>
      <dc:creator>Jevi</dc:creator>
      <pubDate>Sun, 01 Feb 2026 19:28:12 +0000</pubDate>
      <link>https://dev.to/jevimartinez/why-i-turned-my-portfolio-into-an-operating-system-199h</link>
      <guid>https://dev.to/jevimartinez/why-i-turned-my-portfolio-into-an-operating-system-199h</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/new-year-new-you-google-ai-2025-12-31"&gt;New Year, New You Portfolio Challenge Presented by Google AI&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  About Me
&lt;/h2&gt;

&lt;p&gt;They say a portfolio has to be clean and direct. I decided to make mine an experience.&lt;/p&gt;

&lt;p&gt;I'm &lt;strong&gt;Jesús Vílchez&lt;/strong&gt; (aka &lt;strong&gt;Jevi&lt;/strong&gt;), a developer based in Spain. A while ago, I realized that my PDF CV didn't quite capture who I am. It listed what I know, but not how passionately I do it.&lt;/p&gt;

&lt;p&gt;So I asked myself: &lt;em&gt;What if my portfolio was my own computer?&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;That's how &lt;strong&gt;Jevi OS&lt;/strong&gt; was born. I didn't want another static landing page. I wanted a living space—a place where my projects aren't just links, but folders you open, explore, and touch. A place where you can send me an email from a "real" app or lose time hunting for easter eggs on the desktop.&lt;/p&gt;

&lt;h2&gt;
  
  
  Portfolio
&lt;/h2&gt;

&lt;p&gt;Welcome to &lt;strong&gt;Jevi OS&lt;/strong&gt;, my personal web operating system.&lt;/p&gt;

&lt;p&gt;

&lt;/p&gt;
&lt;div class="ltag__cloud-run"&gt;
  &lt;iframe height="600px" src="https://jevi-os-portfolio-543073060060.us-central1.run.app/"&gt;
  &lt;/iframe&gt;
&lt;/div&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;UX Note:&lt;/strong&gt; While the site is fully responsive, I highly recommend visiting from a &lt;strong&gt;desktop device&lt;/strong&gt; to experience the full window management system as I imagined it.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;This project was a collaboration between my creative vision and Google's AI tools.&lt;/p&gt;

&lt;h3&gt;
  
  
  The AI Workflow
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt; &lt;strong&gt;Ideation with Gemini&lt;/strong&gt;: I started by using Gemini to brainstorm the project structure and define the core concepts of a "web-based OS". It helped me outline the architecture before writing a single line of code.&lt;/li&gt;
&lt;li&gt; &lt;strong&gt;Building with Antigravity&lt;/strong&gt;: This is where the magic happened. I built the project using &lt;strong&gt;Antigravity&lt;/strong&gt; as my pair programmer. I guided the AI, describing exactly how I wanted each window to behave and each menu to look. We worked together to build the features, and I focused on polishing the details—from the fluidity of the animations to the sound of every click.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Tech Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Framework:&lt;/strong&gt; &lt;a href="https://nextjs.org/" rel="noopener noreferrer"&gt;Next.js&lt;/a&gt; (React) for the core structure.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;State Management:&lt;/strong&gt; React Context API. This was the biggest technical challenge—orchestrating a global "Window Manager" that handles opening, minimizing, closing, and z-indexing apps dynamically.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Styling:&lt;/strong&gt; &lt;a href="https://tailwindcss.com/" rel="noopener noreferrer"&gt;Tailwind CSS&lt;/a&gt; for the design system.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Infrastructure:&lt;/strong&gt; &lt;strong&gt;Google Cloud Run&lt;/strong&gt; (Dockerized) for scalable, serverless deployment.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Security:&lt;/strong&gt; Cloudflare Turnstile for the contact form.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What I'm Most Proud Of
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;The "Feel" (User Experience):&lt;/strong&gt; It's not just a website that looks like an OS; it feels like one. The system allows you to drag, resize, and interact with apps seamlessly.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Functional Apps:&lt;/strong&gt; The "Mail" app isn't a mockup—it actually works. It sends emails using a secure API I built, running in the Cloud Run container.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;The Details (Creativity):&lt;/strong&gt; I put a lot of love into the small things. Try to find the "Blue Screen of Death" error hidden somewhere in the system! 😉&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I hope you enjoy exploring Jevi OS as much as I enjoyed building it! 🚀&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;If you have any questions about the project, the custom Cloud Run setup, or where to find the Easter eggs, feel free to drop a comment below! 👇&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fekgdzfkngl1zglygenbm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fekgdzfkngl1zglygenbm.png" alt="Jevi-OS login"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh1fpluuso75bil95luj4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fh1fpluuso75bil95luj4.png" alt="Jevi-OS desktop"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>googleaichallenge</category>
      <category>portfolio</category>
      <category>gemini</category>
    </item>
  </channel>
</rss>
