June 2026
Julieta — Cooking Blog
A custom cooking blog for my sister: she publishes and edits recipes herself, with first-class SEO and an admin locked down by RLS.
- Next.js
- React
- TypeScript
- Supabase
- PostgreSQL
- Tailwind CSS
- Zod
- Vercel
Julieta is my sister’s cooking blog —she’s the real “client”—: seasonal recipes, day-to-day stories and lots of photos. The key requirement was that she could publish and edit everything herself, without touching code.
It’s a bespoke site (WordPress / no-code were ruled out): Next.js (App Router) + Supabase + Tailwind, deployed on Vercel with its own domain.
What it does
- Public recipe pages rendered on the server (SSG/ISR) with an editorial layout: a meta strip (prep, cook, servings, difficulty), checkbox ingredients and numbered steps with photos.
- Categories, a “día a día” blog, search and saved recipes.
- Single-user
/admin: only Julieta logs in (Supabase Auth), protected by Next middleware + Postgres Row Level Security. She does CRUD on recipes and posts and uploads photos to Supabase Storage — managing all content without touching code. - First-class SEO:
RecipeJSON-LD per recipe, per-page OG/meta,sitemap.xmland images optimized withnext/image.
Stack
Next.js + React + TypeScript, Supabase (Postgres + Auth + Storage), Tailwind, Zod validation and Vitest tests. A warm, rustic visual identity built by hand.