Building an OS-Style Portfolio

gojavascriptcanvasportfolio

Building an OS-Style Portfolio

Most developer portfolios are simple scroll-based pages. I wanted something different — something that demonstrates technical ability through the experience itself.

The Idea

What if my portfolio was the proof of skill? Instead of telling people I can build complex UIs, I'd show them by making them interact with one.

A desktop operating system has everything:

Architecture Decisions

Why Go for the Backend?

The backend serves all portfolio content via API. This means if someone views the page source, they find an empty shell. The actual content — my resume, projects, blog posts — only exists on the server.

Go was perfect because:

Why No React?

React solves team coordination problems. This is a solo project where demonstrating fundamentals matters more than demonstrating framework familiarity.

Every line of JavaScript is intentional. The window manager, the dock magnification, the event handling — I understand all of it because I wrote all of it.

What I Learned

  1. Canvas is underrated for web UIs. The wallpaper animation runs at 60fps with minimal code.
  2. Go's standard library is incredibly capable. HTTP server, JSON handling, file serving — all built in.
  3. Constraints breed creativity. "No frameworks" forced better architecture decisions.

The entire project is about 400 lines of Go and one HTML file.