Generational Food Vibe Check
The same dish, in four generations’ voices
Choose Gen Z, Millennial, Gen X or Boomer, pick a mood, and let it bet on your dinner. Every recipe is rewritten in that generation’s voice — same food, completely different energy.
Live · Browser — mobile and desktop
Features
Four Generational Voices
Gen Z, Millennial, Gen X and Boomer each get their own rewrite of the same dish — title, ingredients and steps.
Mood-Based Menus
Clean Girl, Gremlin Mode, Broke AF and Payday. Each mood carries its own palette and its own food list.
Let Fate Decide
A betting mechanic that picks dinner for you when you cannot, with a running "current winner".
Community Suggestions
Anyone can suggest a dish with a photo. Submissions land in a moderation queue rather than going live.
Admin Review Queue
Approve or reject suggestions, upload imagery, and trigger recipe generation from a protected panel.
Zero-Cost Reads
Visitors are served cached results from edge storage. No visitor action ever bills an AI call.
How it works
- Choose your lane: Gen Z, Millennial, Gen X or Boomer. This decides the voice everything is written in from here on.
- Pick a mood: Clean Girl, Gremlin Mode, Broke AF or Payday — each with its own colour scheme and menu.
- Let fate decide: Cannot choose? Place a bet and the app picks for you, then crowns a current winner.
- Cook it: The full recipe appears in your generation’s voice — served instantly from cache, no AI call, no waiting.
AI with a spending limit
The obvious way to build this — call the model whenever someone opens a page — is also the way to wake up to a bill you did not budget for. Recipes are instead generated once by an admin, reviewed, and written to edge storage. Traffic and AI cost are completely decoupled.
- Generation is admin-triggered and never visitor-triggered
- Results cached in Cloudflare KV and served from the edge
- Cost stays flat whether the app gets 10 visits or 100,000
Personality as a design constraint
Writing one recipe is easy. Writing the same recipe four times so each version sounds genuinely like the generation it is aimed at — without becoming a parody — is a prompt-design problem, and it is exactly the problem behind any branded AI feature.
- A distinct voice per generation, held consistent across every dish
- Structured output — title, ingredients, steps — not free text
- Every result reviewed before it reaches a visitor
Serverless from end to end
No servers, no containers, nothing to patch. The whole app is static files plus edge functions, with object storage for uploads — the same architecture we would use for a client product that has to stay cheap and available.
- Cloudflare Pages Functions for all API routes
- KV for the catalog, R2 for user-uploaded images
- Secrets held outside the codebase, never in config
In numbers
- 4 Generational voices per dish
- 0 AI calls triggered by visitors
- 100% Served from the edge
At a glance
| Model | Llama 3.3 70B via Groq |
|---|---|
| Hosting | Cloudflare Pages + Functions |
| Catalog | Cloudflare KV |
| Images | Cloudflare R2 |
| AI calls per visit | Zero |
| Servers to maintain | None |
Why we built it
This one is not enterprise software, and that is the point. It is a small consumer app that shows what a language model does when you give it a voice and a hard budget. The AI never runs for a visitor — every recipe is written once, reviewed, and cached at the edge. The result feels instant, costs almost nothing to serve, and does not get more expensive when it goes viral.