Top
Best
New

Posted by mitchivin 6 days ago

Show HN: I recreated Windows XP as my portfolio(mitchivin.com)
Years ago I stumbled across a basic version of this concept and it stuck with me. I knew if I was ever going to take on such a project, it would need to be flawless, but without coding experience it was just another idea that would never happen. By the end of 2024, as AI coding tools exploded everywhere, I finally had a way to make it real.

I started from zero knowledge and spent months collaborating with AI agents as a learning experience. Every pixel and every function went through me. The AI translated what I asked for into code, but every decision was human. I didn't use existing OS frameworks because the goal was learning how basic coding languages worked while also developing my skills with AI collaboration. Apart from basic libraries like xp.css and paint.js, it's all original code.

The result is a fully functional Windows XP recreation running in your browser. Complete experience with sounds, animations, and working applications. Even works properly on mobile, which required rebuilding everything to maintain the authentic feel without becoming unusable on touchscreens.

This project taught me more about coding and AI collaboration than I ever expected. Would love to hear your thoughts on the execution and any feedback on the technical approach.

1019 points | 316 commentspage 3
merelysounds 6 days ago|
Feature request, very nitpicky: currently there is a grid overlay that simulates display pixels; but the content behind it is high resolution - as a result one “pixel” consists of multiple colors, which can break the illusion; this is especially visible when scrolling text. Perhaps there’s a way to render actual content in low resolution too, to match the grid resolution? E.g. set the css width&height of an element to 50% and upscale 2x via css scale transform (although filtering could be a problem), or render to a canvas and upscale there, or use html gl, or maybe there’s another way?
ChuckMcM 6 days ago||
Interesting that you vibe coded the whole thing.
pxc 6 days ago||
I don't think it counts as vibe coding, since the author read every line of code and presumably also asked questions about them and looked things up about the meanings of unfamiliar keywords and functions and so on.

It might be spiritually close to vibe coding in some ways because the author wasn't previously a programmer, so this code was never reviewed by a professional or trained developer.

But it was a high-effort project that involved inspecting and trying to understand the code, which isn't what vibe coding is about.

Whatever we want to call it, I think it's awesome! This is a good use of LLMs to help laypeople break into writing code imo, and the result is great.

mitchivin 6 days ago||
yeah, I've had a tough time finding the right wording so I've even called it vibe coding since its definitely not at the other end of the spectrum. I think its somewhere in the middle, like a developer version of Ratatouille
pxc 3 days ago||
I think you did a good job describing how you built this! There just isn't a cute little neologism that perfectly describes it in one or two words.
nurettin 6 days ago||
He said it took months, so perhaps we need to coin a new term for it. Maybe AI crawling?
mitchivin 6 days ago||
its been a nightmare trying to word it... haha. I really do feel like it's something that nobody else is really doing, at least that I have seen. but if I really think about, why would anyone do this? hahaha
ChuckMcM 6 days ago||
"vibe designed"?

I suspect that this sort of design wouldn't come up a lot, but do you think about the difference between this experience and the experience of designing something where you used a workflow that you were familiar with? Or put another way, if you did this again, would it go faster or would it take the same amount of time?

mitchivin 6 days ago||
It would definitely go faster based on a few things. One being that these models are continually improving - an ungodly amount of time was spent trying to connect the dots between what I was seeing and what the agent was seeing/understanding.

But aside from that, I would still say yes. I've learned a lot (it's just hard to put into words when I'm missing some of the technical language) and I've gained so much confidence in even dealing with code.

I've actually started doing some work for someone after they saw my site on Reddit, which I could never have done before. It involves Docker, a bit of Python, and working on a codebase with multiple contributors. It's both exciting and terrifying at the same time.

bitwize 5 days ago||
It looks good. As others have flagged up there are a few inaccuracies, but I noped out of Windows about the time XP came out (mainly due to the product activation stuff), so I couldn't itemize those in detail.

These kind of projects are fun to do, but as a showcase of your design skills... ehhhh? There are a few things that have your original design, like your résumé and such. Something like this is a much better showcase of your front-end coding skills, but you've delegated much of that to AI.

My advice: if you want to show off your programming skills, learn how to do it on your own. Don't do Windows XP right off the bat. Start with something simple. Make an Amiga "boing ball" bounce around the screen or something. Then tackle more complex challenges. It's not just about arriving at a finished product. By crafting something yourself, without machine assistance, you develop a better feel for what should be in the finished product and what shouldn't.

(It's OK to use dumb code generators to automate repetitive tasks, transpilers, etc. But there's a feel for when and how to use those as well.)

tptacek 6 days ago||
You got this far have DIR print something!
chatmasta 6 days ago|
I was so proud of myself for remembering it’s DIR and not ls. But at least `help` worked.
giveita 6 days ago||
although not much I still use the windows command line (not powershell). XCOPY being my favourite (although rsync is nicer but xcopy still rocks)
carlsborg 6 days ago||
Arguably the most familiar desktop user interface on the planet. I often wonder why complex web apps do not use this searchable start menu format.
mitchivin 6 days ago|
i've got no statistics to back it but I'd bet my life savings on it being exactly that (its $0, but still)
petermcneeley 6 days ago||
The paint app is very accurate. Kinda shocking really.
mitchivin 6 days ago||
that is something I cannot take credit for - https://jspaint.app/#local:58ec4c22cf9878

I just had to make some small changes so it would blend in better with my site

shrinks99 6 days ago||
No way to save my creations though :(
mitchivin 6 days ago||
nah I removed that from my version, I can't remember why though so I might try and bring it back - if you look up jspaint or paintjs theres some really cool ones available
petermcneeley 6 days ago||
you ever see this https://puter.com/
mitchivin 6 days ago||
thats sick, I hadn't seen it
souldzin 6 days ago|||
In my head, I heard videogamedunkey saying: “Ohhh... they've got the original paint on this one! I didn’t know this was a slick-type website!”
ozgung 6 days ago||
Oh my Paint doesn't work. New button is disabled. Maybe because I use Safari and Steve Jobs disabled it on purpose.
cr125rider 6 days ago||
This works incredibly well on mobile too. Awesome job
mitchivin 6 days ago|
thank you!
utyop22 6 days ago||
Did you make this all by yourself?
mitchivin 6 days ago||
yeah, its been my obsession for the past 6 months. Im a junior graphic designer so I decided I would try something out of the box to try and grab recruiters attention, since my actual projects wouldn't be enough
thefourthchime 6 days ago|||
man when I hear young people saying they can't get a head start or no one will hire them, I say go make something show off what you can do and you really nailed it here!
utyop22 6 days ago|||
Super impressive!
alexvitkov 5 days ago||
> Every pixel and every function went through me. The AI translated what I asked for into code, but every decision was human.

You'll find that programmers are a lot less prickly when you use AI to generate code, than say artists are, when you use it to generate pictures. You don't have to defend yourself, it's OK to use it to make cool things that you couldn't otherwise.

You should be aware though that even though it may "feel like magic" when just getting started, there's an upper limit to the complexity of what you can build with AI-generated code - it's very low quality and will start falling apart once you stack a lot of it. For the same reason I wouldn't recommend using it as a learning resource, if you really want to get into programming.

ipaddr 6 days ago||
It looks great the application section was a little lacking. Add minesweeper or defrag or any number of the pre installed pieces like file explorer and get more creative.

Its a lot of work setting everything you have up spend sometime on more details / applications

gg2222 6 days ago|
Wow, this reminds me of how Windows XP was such a beautiful UI.

UI these days are flat everything and pretty boring.

More comments...