TL;DR. For a 2-3 hour layman vibe-coding workshop, lock the scope shape to single user, single screen, no auth, localStorage-or-nothing persistence — the “rectangle of stuff on a page” pattern [1] [86]. From that shape, five reliable menus stack roughly by technical depth: (1) calculators and personal trackers (tip, BMI, habit, expense splitter) [12] [13], (2) decision toys and generators (random-restaurant wheel, name generator, Wordle clone) [19] [35], (3) fetch-and-render with one no-key API (Open-Meteo weather card, PokéAPI Pokédex, ISS tracker) [44] [46] [51], (4) scratch-an-itch family or teacher utilities (meal planner, lesson critique, baby-sleep dashboard) [76] [78] [80], and (5) micro-games (Pong, Hangman, falling-objects catcher) [25] [36]. The categories that consistently blow the timebox: multi-user marketplaces, real-time multiplayer, anything with payments, native mobile App Store deploys, and OAuth-provider integrations [2] [87] [90] [91] — when an attendee proposes one, swap it for the single-user variant.
What “workshop-scale” actually means
Instructors converge on a sharp shape. Stanford’s non-developer Lovable course caps four modules’ output at a to-do list or feedback form [8]. Dyad’s beginner guide names todos and quizzes as the sweet spot — “small enough to finish in an afternoon, complex enough to teach real patterns” — and even pins concrete UI shape: 4 multiple-choice answers, a score counter, a 30-second countdown [12]. At Singapore’s 65labs, instructor Sherry Jiang puts it bluntly: “vibe coding is best suited to very simple, lightweight, straightforward consumer apps — not anything very technical” [4]. The Innovation Co-Lab at Duke ran the same format in February 2026 for the same audience [70].
The constraint table laymen should hold their idea against:
| Axis | Workshop-fits | Cut to fit | Source |
|---|---|---|---|
| User accounts | None (or device-local) | OAuth/email login | oauth-trap, security-tax |
| Screens | 1 (max 2 with settings) | Multi-page navigation | pomodoro-mvp |
| Data | localStorage or in-memory | Backend DB, RLS, schemas | snaplama, lovable-sec |
| User roles | 1 | Buyer + seller + admin | marketplaces |
| Realtime | None | Websockets, multiplayer sync | kills-the-vibe |
| Money flow | None | Stripe, refunds, idempotency | pay-edges |
| Native | Web only (deployed URL) | iOS/Android App Store | 70-30-debug |
| Third-party SaaS | None or 1 no-key API | Twilio/SendGrid + key plumbing | twilio-setup |
The “last 10% is 90%” effect is real. Calvin Ku reached 90% on a “simple” Pomodoro in three days and then spent months on the last 10% once OAuth, accessibility, and DB wiring entered scope — his post-mortem rule: one primary loop and one settings screen, defer everything else [6]. Over 60% of security issues in vibe-coded apps come from the moment login enters the picture — missing row-level security, exposed API keys, client-side-only auth, IDOR — and beginners cannot debug any of these live [10] [92]. Tool choice should match scope too: v0 or Tempo for a single component or landing page; Lovable, Bolt, or Replit only when stored data is actually needed [5]. Five minutes of up-front “one paragraph + screens list” documentation saves hours of redirects later [7].
Menu 1 — Calculators and personal trackers
The safest first project. Each fits one screen, ≤3 inputs, and either localStorage or no persistence at all.
| App | What it does | Persistence | Source |
|---|---|---|---|
| Tip Calculator | Bill × tip % ÷ people, with 15/18/20/25 % presets | none | vibecoding.app |
| Pomodoro Timer | 25-min focus, browser notification, task list | localStorage | Ann Jose build, Dyad |
| Habit Tracker | Named habit, emoji icon, 30-day streak grid | localStorage | Questera 2026 roadmap |
| BMI Buddy | Height + weight → BMI + category | none | Lovable deploy |
| AllCalculator BMI | Same shape, second worked example | none | Lovable deploy |
| Simple Mortgage Calc | Principal + rate + term → monthly payment | none | Lovable deploy |
| Handy Calc Lab | Bundles BMI / EMI / Age / GST / interest | none | Lovable deploy |
| Event Countdown | Birthday/wedding countdown, multi-event list | localStorage | Lovable deploy |
| Meeting Cost Calculator | Attendees × rate × duration → $ wasted | none | Taskade 2026 list |
| Expense Splitter | Group expenses → minimum-transfer settlement | localStorage | Devpost Bolt build |
The tip calculator [13], Ann Jose’s themed Pomodoro Flow [22], Questera’s habit-tracker template [71], and the four Lovable-deployed calculators [15] [16] [17] [24] all demonstrate the same structural pattern: one input form, one output panel, one optional localStorage list. Event Countdown [18] and the Devpost expense splitter [23] push the high end of “still fits in 2-3 hours” — useful when an attendee wants a slightly meatier challenge. Taskade’s 2026 calculator roundup adds Meeting Cost Calc, QR Code Studio, Color Palette Extractor and Multiplication Playground in the same scope band [14].
Menu 2 — Decision toys, generators, and word games
Higher fun-per-prompt ratio than calculators. Output is the whole point, so attendees iterate on what comes out rather than what gets stored.
| App | What it does | Source |
|---|---|---|
| Random Restaurant Picker | One button → random restaurant from your list | v0 community |
| Whee’Lunch | Spin-the-wheel lunch decider | Vercel deploy |
| WheelWise | Generic random picker — names, winners, yes/no | Vercel deploy |
| Roblox Name Generator | Stylised random username generator | Lovable deploy |
| My Poké Creator | Random Pokémon-style character generator | Lovable deploy |
| yes-no tarot ai | Novelty tarot oracle, single-card answer | Lovable deploy |
| Meowmoire | Upload cat photo → shareable meme | Lovable deploy |
| Mixels.ai | AI pixel-art generator and editor | Lovable deploy |
| Mighty Drums | Step-sequencer drum machine with MIDI export | Lovable deploy |
| Gradient Generator | Pick HSL stops → live gradient + CSS | Lovable how-to |
| ToolsFlow Color Picker | HEX / RGB / HSL converter | Lovable deploy |
| Wordle clone (30-min) | Five-letter daily word, Wordle-style colour feedback | Medium write-up |
| QuizGenius | Make-or-take AI-generated trivia quizzes | Lovable deploy |
A non-coder documented building the Wordle clone above end-to-end in 30 minutes with v0.dev plus shadcn — well under one workshop block [35]. The “boring random name” generator pattern shows up across Roblox Name Generator [28], My Poké Creator [30], and the wheels [20] [21] — all built on the same randomChoice(array) skeleton. Lovable explicitly publishes a “Build Interactive Games in Minutes” page [39] and a step-by-step gradient-generator how-to [43]; Bolt launched an official community Gallery in 2025 specifically to surface this scale of project [41]. For a more curated source pool, Questera’s 2025 ideas list adds AI meme generator, mood-playlist generator, interactive story engine, and generative art gallery in the same band [40].
Menu 3 — Fetch-and-render with one no-key API
Promote attendees from “stuff stored in my browser” to “I called a real internet thing”. Hard rule: one API, no auth, no key juggling. Mixed Analytics’s 2026 curated list is the canonical menu instructors pick from [67].
| App archetype | API | Why it fits | Sources |
|---|---|---|---|
| Weather card | Open-Meteo | No key, no sign-up, no credit card | docs, DEV tutorial |
| Pokédex | PokeAPI | 100 req/IP/min, no auth | docs, JQQ vanilla-JS |
| Currency converter | Frankfurter | 200 currencies, no key | docs |
| Random-dog button | Dog CEO | One-endpoint random image | docs, DEV walkthrough |
| ISS live tracker | Open Notify | lat/lon now + pass-times | docs, 101 Computing |
| Astronomy picture of day | NASA APOD | DEMO_KEY works out of the box |
docs, APOD app guide |
| Address on a map | Leaflet + OSM | Pan/zoom + Nominatim geocode, no key | Leaflet, Nominatim demo |
| Dad-joke / advice card | icanhazdadjoke | Plain GET, JSON via Accept header | docs, Wes Bos |
| Random joke or advice | Advice Slip / JokeAPI / Chuck Norris | All no-auth | Advice, JokeAPI, Chuck |
| Trivia quiz | Open Trivia DB | Categorised Q&A, no auth | docs |
| Recipe finder | TheMealDB | Random + search by ingredient | docs, Tuts+ build |
| Word definition | Free Dictionary | GET-only /api/v2/entries/en/<word> |
docs |
| Wikipedia card | MediaWiki REST | /page/summary/<title> for topic blurb |
docs |
| Next SpaceX launch | SpaceX REST | /latest and /next mission JSON |
docs |
Open-Meteo is the strongest single starting point — explicitly no API key, no sign-up, no credit card with a CC-BY JSON feed and 10K free daily calls [44], and there is a March 2026 DEV tutorial that walks a layman through the entire fetch [45]. PokéAPI is the second-most-cited beginner target [46] with James Q Quick’s vanilla-JS Pokédex as the canonical short tutorial [47]. The full archetype set is canonised in Strapi’s 2026 portfolio list (weather dashboard, movie search, currency converter, recipe app) [68] and DEV’s “12 free and fun APIs” mapping [69].
Menu 4 — Scratch-an-itch apps (with real human stories)
The most motivating menu for laymen, because the build is about them. Use these as inspiration framing during the workshop’s “what should I build?” opening.
| Builder | App | Tool / time | Source |
|---|---|---|---|
| Kevin Roose (journalist) | LunchBox Buddy — fridge photo → lunch ideas | Bolt, ~10 min | NYT |
| Laura Zaccaria (HR) | Family Meal Planner | Cursor, evenings | AOL/Insider |
| Harshal Patil (PM) | Tinder-style baby-name ranker | Lovable, 1h 15m | own blog |
| Michael Dugmore (eng) | Weekly Family Planner (WeekDoc) | Cloudflare, Christmas break | own blog |
| Miguel Parente (PM/dad) | BrincaIdea — toy photos → playtime ideas | Cursor + v0 | Medium |
| Arlyn Gajilan (editor) | Tobey’s Tutor — AI tutor for dyslexic son | Feb→June 2025 | Scientific American |
| Juliann Nelson (PM) | Personal habit tracker | Windsurf + Claude, 1 day | Medium |
| Yi (parent) | Baby Sleep Tracker (Nanit re-render) | Cursor, weekend | own blog |
| Karima Williams (non-coder) | Crash Out Diary — emotional venting | Claude + Lovable | Essence |
| Peninsula SD biology teacher | LessonLens — AI lesson-video critique | Claude Code | EdWeek |
| James Cantonwine (Peninsula SD) | Scholarship search, CTE budget, school-comparison | Claude Code | EdWeek |
| Cynthia Chen (designer) | Dog-e-dex — snap-a-dog Pokédex | Claude + Replit/Cursor, 2 months | Yahoo Tech |
| Doher Pablo (employee) | Travel-receipt expense app | Power Apps + Copilot, 2h | Microsoft Source |
| MS leaders + kids | Lemonade-stand manager, homework tracker, “nightmare-management” | GitHub Spark, ~20m each | Microsoft Source |
The pattern across these cases: a specific person solving a specific problem in their own life, not a generic tutorial example. Roose’s LunchBox Buddy shipped in roughly 10 minutes [83]. Patil’s baby-name ranker — ELO scoring, 10-accent pronunciation preview — took 75 minutes on Lovable’s free tier [75]. Peninsula SD reports building tools that replaced $30-40K commercial products in a few hours [78]. Microsoft’s case study has a non-technical employee shipping a 2-hour expense app and parents-with-kids building lemonade-stand managers and “nightmare-management” apps in ~20-minute sessions [81]. The Vibe Coder Blog’s 2026 kids guide names the four archetypes that work best for the youngest builders: flashcard quiz, collection tracker, tiny browser game, gratitude/mood journal [85].
Use these stories at the start of the workshop ⚠ before participants try to invent something. The single biggest scope-down lever is “build the thing you genuinely need this week” — it limits feature creep because the builder knows when it is enough.
Menu 5 — Micro-games (under 200 lines of state)
Games are the most popular ask in mixed-audience workshops, so have a short list ready. Stick to single-player or hot-seat; never real-time multiplayer [91].
| Game | Mechanic | Source / reference deploy |
|---|---|---|
| Falling-objects catch | Move paddle to catch falling treats | imagi × Lovable Hour of Code |
| Pong | Two paddles, one ball, score to 10 | Retro Paddle Battle |
| Hangman | 5-min word timer, alphabet keyboard | Hangin’ Man |
| Wordle clone | 5-letter daily word, color feedback | 30-min build |
| Asteroids | Single ship, rotate + thrust + shoot | madewithlovable showcase |
| CandyClicker | One button, incrementing counter, upgrades | madewithlovable |
| Anxiety Balloon Pop | Tap to pop, calming variant of whack-a-mole | madewithlovable |
| DOOMscroll | Browser game about doomscrolling | HN thread |
| Piece Together | Animated jigsaw puzzles | HN thread |
| Latin Learner | Flashcards (Anki-lite) | HN thread |
The imagi × Lovable Hour of Code canonised the falling-objects catcher as the first vibe-coded game template — class-tested across schools — and the prompt that works is concretely “create a game where a cat catches falling treats and earns points” [36]. madewithlovable’s entertainment showcase enumerates Pong, Asteroids, CandyClicker, Hangin’ Man and Anxiety Balloon Pop, all hosted at public lovable.app URLs [25] [26] [27]. Cursor-built quiz games scaled to 7 hours for 100 AI-generated questions [37] — drop to ~20 hand-picked questions to land at 2-3 hours.
What doesn’t fit — and the swap
When an attendee proposes any of these, swap to the right-hand column on the spot. The same patterns repeat across every instructor write-up surveyed.
| Bad-fit idea | Why it breaks | Workshop swap | Source |
|---|---|---|---|
| Uber / Airbnb for X (marketplace) | 3 user types × 3 UIs; auth + payments + admin | Directory page with seed data + “request” form | Sharetribe |
| Instagram / Twitter / TikTok clone | Uploads, feeds, auth, moderation | Single-user photo wall with hardcoded captions | McKelvey survey |
| Stripe / Patreon / paid subscriptions | Idempotency, webhooks, refunds, disputes | Tip-jar QR (link to existing payment URL) | Roobykon, McKelvey |
| Real-time multiplayer game | Websockets, state sync, latency | Single-player or hot-seat on one device | Geeky-gadgets |
| Native iOS/Android (App Store) | 70 % time debugging native-platform context loss | PWA via Lovable/Bolt — same URL, installable | App Store memoir |
| OAuth login (Google / GitHub) | RLS, exposed keys, IDOR, client-side bypass | Local pseudonym field saved in localStorage | Sola Security, Lovable docs |
| Twilio SMS / SendGrid email | Account, API keys, billing, terminal-level config | “Copy this text” button or mailto: link |
Twilio post |
| ML training / RAG / vector DB | Embedding pipelines, eval, infra | One LLM call per click via the builder’s built-in | SaaStr |
| “Productivity app for everyone” | No audience, no shape | One-role utility for one named person | Nucamp 2026 |
| Generic “social network” | Same as Instagram clone but vaguer | Personal page with hardcoded “guestbook” | McKelvey |
Sharetribe’s 60-hour marketplace post-mortem is the clearest case study: a forum has one user type, a marketplace has three — buyer, seller, admin — and the resulting build cascaded with seven consecutive “fixed!” declarations on one booking bug [87]. Roobykon adds the payment-edge-case angle: 45% of AI-generated code reportedly contains an OWASP Top 10 vulnerability, and AI consistently skips idempotency keys, webhook signatures, refund and dispute paths [88]. For mobile, the App Store memoir is unambiguous: “30% of the time prompting the AI for code that works and 70% of the time debugging various errors that show up due to the AI constantly losing context” [90]. Even Twilio’s own vibe-coding blog admits the setup (account, API keys, appsettings.json, terminal comfort) is itself a barrier for beginners [93].
Hackathon facilitators report scope is the single biggest demoraliser; the facilitator’s job is explicitly to narrow it, favouring visual / user-facing features over backend depth [3]. Jiang at 65labs frames the cultural rule: “building is so fast now that it’s often smarter to start over than to patch a messy product” — so accept the scope-down rather than fight it [4].
Picking one app for your workshop
If you have to commit to a default, pick from this short list. They are picked by ratio of “successful ships” to “stuck attendees” across the sources surveyed.
- Tip / split calculator — for a mixed-audience adult workshop. Single screen, instant satisfaction, mobile-first feels real [13].
- Habit tracker with emoji + 30-day grid — for participants who want something they will actually use. localStorage only [71].
- Open-Meteo weather card for “my city” — for the one-API milestone. No key, deploys cleanly [44] [45].
- Falling-objects catcher — for kids, classrooms, anyone who wants a game. Class-tested as Hour-of-AI canonical [36].
- A scratch-an-itch tool the attendee names in the first 10 minutes — overrides everything above. Patil and Roose both picked things that mattered to them, and that motivation carried them through [75] [83].
Final rule of thumb for sizing → if the attendee cannot describe the idea as “one screen with [list of widgets] and a button that does X”, it is not workshop-scale; help them shrink it before any prompt is typed [7] [12].