Most portfolios are a list of links. I wanted mine to be something you can walk around in.
RynnOS runs in your browser and looks like macOS. Dock, menu bar, draggable windows, twenty-something interactive apps.
Why an OS
A portfolio should show how you build things, not describe it in text.
An operating system happens to be a good container for that. Each project gets its own window. You can open the AI chat next to a Mario game and drag them around.
Twenty-something apps
Each one is its own project.
The AI chat connects to multiple models. The music player has album art and real-time audio visualization. The terminal runs actual commands. There's also a Mario game, a 3D scene, a maps app with geolocation, plus everyday tools like calculator, notes, and calendar.
Building twenty-plus apps taught me more about component architecture than any single large project. Every app has different requirements and rendering strategies. The hard part is making them all feel like they belong together.
The stack
Next.js 16 and React 19 at the base. Three.js for 3D, Pixi.js for the games. Window management is custom-built: dragging, resizing, minimizing, z-ordering, all from scratch.
The whole thing also runs as an Electron app.
Last thing
RynnOS is over-the-top, on purpose. Open it up, click around, break things.