Personal project
This desktop portfolio
A Windows XP-style portfolio with movable windows, server-verified Minesweeper, and a daily mini crossword.
Built the application and game behavior; reused attributed XP artwork
- SvelteKit
- Svelte
- TypeScript
- CSS
- Node.js
- SQLite
Problem
A personal site should show engineering work clearly while still feeling personal.
My contribution
- Built the portfolio routes, desktop interactions, project views, and resume presentation.
- Implemented server-owned ranked Minesweeper boards and a SQLite leaderboard.
- Kept a separate unranked local game available when the ranked service is offline.
- Added a daily mini crossword with browser-saved progress.
How it works
Workflow diagram
Choose a window
Open About, Projects, Resume, Contact, or Games through direct links.
Inspect the work
Read a project page, follow an available source link, or open the resume.
Play a game
Try a ranked Minesweeper board or the daily mini crossword.
Engineering decisions
Normal web routes
The desktop shell keeps direct links and server-rendered portfolio text.
Server-owned ranked games
The server tracks ranked boards and validates wins before accepting leaderboard scores.
Explicit offline behavior
Local play stays available, but offline results do not enter the ranked leaderboard.
Result and limits
The site combines readable portfolio pages with interactive desktop and game behavior.
- The source repository is private.
- XP Luna bitmap assets are reused from web-xp with attribution. The portfolio shortcut icons are original site SVGs.