Portfolio v3
The site you are reading. Payload CMS + Next.js, Supabase for data and media, deployed on Vercel with functions pinned near the database.
Migrations are the source of truth. `db.push` is false in every environment, dev included, so each schema change is an explicit generated migration that is committed and applied before deploy — and Vercel never migrates on its own.
1 deployment
the Payload admin and the public site ship from a single Next.js app, with the schema committed ahead of every deploy