Don Micka de la Vega
Client: Micka de la Vega — fotógrafo
Stack
Description
Freelance project delivered in stages, based on a formal proposal and the client's Figma. Each stage closed with full verification (typecheck, lint, unit tests, and build) before merging to production.
The challenge
A French photographer needed a portfolio that felt editorial and alive, in two languages, and wanted to upload his own photos and rewrite his copy without depending on me. That meant solving three things at once: fluid animation without hurting performance, content editable from a panel, and separate admin accounts so his credentials were not the service ones.
The solution
GSAP with Lenis for scroll and transitions, with timing constants exported and locked by tests so nobody moves them by accident. PocketBase backend on a self-managed VPS, with an admin panel, separate accounts (one for the client, one for service), and a printable guide at `/admin/help`. Full technical SEO: canonicals, en/fr hreflang, og-image generated with `next/og`, ISR sitemap, and `noindex` on the admin. GitHub Actions CI running unit tests always and Playwright end-to-end on pull requests.
Results
Live and in the client's hands — he uploads his own content from the panel and reported zero bugs. 96 unit tests and the end-to-end suite green. The language toggle went from 0.46 s to 0.16 s before navigation starts: the bottleneck was not the animation duration but the navigation waiting for the timeline's `onComplete` instead of overlapping with it.
