shpetimgashi.com - Portfolio & Interactive CV
The site you are reading. One schema-validated data file drives the rendered CV and the project pages, with a playable 16-bit game CV in Phaser in development against the same source.
Overview
This site. A conventional CV can describe front-end work but cannot demonstrate it, and maintaining the same career data across a PDF, a web page, and anything interactive guarantees the three will drift apart. The portfolio was built to solve both problems at once: it is itself the evidence, and it has exactly one place where the data lives.
Architecture
Single source of truth
Every piece of CV content - experience, education, skills, projects - lives in a single cv.yaml file. A Zod schema validates it at build time, so a malformed date or a missing required field fails the build rather than reaching production. Every renderer reads from that one file:
- The rendered HTML CV and its print stylesheet
- The project index and the long-form case-study pages
- The game CV, which derives its rooms, stations, and interactive records from the same entries
Adding a project means editing one file. Nothing can silently disagree with anything else.
Interactive game CV
A 16-bit game layer built with Phaser reads the same data source and turns a career history into explorable rooms - a timeline hall for roles, a library for education, a laboratory for projects. It is in development and not yet published here.
Design system
A token-based CSS layer with dark and light themes, a dedicated print stylesheet so the page produces a clean PDF, and prefers-reduced-motion handling throughout.
Engineering practice
- CI pipeline: lint, type-check, unit tests, build and end-to-end tests, run on every change
- Testing: Vitest over the data layer - ordering, chronology and a guard that fails the build on content that should not be published - and Playwright for smoke and accessibility runs against the built site
- Deployment: Cloudflare Pages, built and published on every change to the main branch
Design principle
The same principle recurs here as in the manufacturing optimisation tool and the comfort feedback platform: the answer first, the depth underneath for whoever wants it. The CV reads in thirty seconds; the case studies and the print view are there for anyone who wants to go further.