App Before Lunch

Can AI build an app before lunch?

Every week I give Claude Code one prompt and a timer, and I report what actually happens. The apps are free, the prompts are public, and the bugs stay in the video.

Subscribe on YouTubeLatest build

The real terminal from episode 2, elapsed clock 00:38 in the title bar: Chrome Headless Shell downloads to 85.4 of 85.4 Mb, then Claude Code says I'll wait for the notification and stops. That line is boxed in red: the build froze there. The App Before Lunch mascot, tilted toward the frozen line.

One prompt. No back and forth. What you see typed is the whole brief. AI writes it all. The code and the tests. I never touch the source. I only use the app. Bugs get reported the way a client would, not a programmer.

Episodes

Newest first. Every build ships with its prompt and source on GitHub.

Tessera, the photo editor Claude Code built in episode 7, in the crop tool: the test robot clicks Cancel with no crop box drawn, nothing changes, and it flags the button as doing nothing. Label: The robot's own recording.

I asked Claude Code for Photoshop. Then a robot clicked every button.

Ep 07 · Photo editor

One prompt asked for a browser photo editor, and about 25 minutes later Claude Code had built Tessera, with layers, filters, text and undo. A test program clicked all 281 controls and flagged 64 as doing nothing. Tried again the way a person uses them, all 64 work: the mistakes were the checker's. Not affiliated with Adobe.

Watch The prompt Source

  1. The status line from episode 6 in a terminal: 5h 13% resets 12:10am, week 47% resets Mon 3am. Label: Real reading, re-typeset from a live capture.

    See your Claude Code limit before you hit it

    Ep 06 · Usage limits

    A status line that shows how much of your 5-hour and weekly Claude Code limit you have used, and when each one resets. One prompt, about four minutes, an installer and 41 checks. It reads the field Claude Code already sends, so no network calls and no estimates. It cannot see model-specific limits.

    Watch The prompt Source

  2. One of the wrong banners from episode 5: ai-channel finished, All three changes are live and verified after reloads, a reply from an earlier turn. Label: Replayed from the live-test log.

    Get notified when Claude Code finishes

    Ep 05 · Notifications

    A kit that tells you when a Claude Code run ends: a macOS banner, a spoken line, and an optional phone push. Version 1 stopped mid-sentence, and on a real Mac it read the wrong reply on 39 of 231 banners. Four sessions later, reading one field from the hook payload first fixed it.

    Watch The prompt Source

  3. The extension on the episode 4 test page: a 1 lb 11.5 oz pizza read as 16 oz, so the best value tag sits on the 24 oz pizza; the real price is $0.29 per ounce.

    My Claude Code Chrome extension picked the worst deal

    Ep 04 · Chrome extension

    A Chrome extension that shows the real price per ounce on Amazon results and tags the best value. Seven minutes, every test passing, then a "1 lb 11.5 oz" label put the best value tag on the worst deal. A one-sentence bug report fixed it in under four minutes. One search on the real Amazon still crowned a wrong pick. Not affiliated with Amazon.

    Watch The prompt Source

  4. Our pregnancy food checker from episode 3: Wine, Avoid, No amount of alcohol is known to be safe during pregnancy, with its Source link pointing at acog.org healthy-eating-during-pregnancy, a page that never mentions alcohol.

    AI built my health app in 5 minutes. Then I clicked "Source."

    Ep 03 · Pregnancy food checker

    Type a food and see what public FDA, ACOG and CDC guidance says about it in pregnancy, with a source on every answer. Five minutes and 90 rules, but the page cited for alcohol never mentions alcohol. Three short bug reports later: 107 rules, each pointing at a page that actually says it. Not medical advice.

    Watch Try the app The prompt Source

  5. The terminal from episode 2: Build failed: No browser found for rendering frames! in red, after the Chrome download had stopped silently.

    Can AI build the machine that made this video?

    Ep 02 · The video machine

    Every episode here is rendered by code. I gave Claude Code an empty folder and one prompt to rebuild that pipeline. Fifteen minutes to a first run, a freeze on the browser download, two bug reports, and a clean one-command build in 27 seconds.

    Watch Read the write-up The prompt Source

  6. The invoicing app from episode 1 with a sample client, the issued date circled in red: the bug that dated evening invoices tomorrow.

    Can AI build my LLC's invoicing app before lunch?

    Ep 01 · Invoicing

    I'm forming an LLC and refuse to pay $30 a month for invoices. One prompt, three minutes, fourteen passing tests, and one bug the tests could not see: evening invoices were dated tomorrow.

    Watch Read the write-up Try the app The prompt Source

Scorecard

EpisodeBuild TestsBugCost
EP 07about 25 mincontrols: 281 clicked by a robotre-test: 0 of 64 really deadflagged: 64 "do nothing"$6.02 at API prices, covered by Claude + ElevenLabs plans
EP 06about 4 min41 checks, 17 payloadsnetwork: none, stdin onlyblind spot: model-specific limits$1.19 at API prices, covered by Claude + ElevenLabs plans
EP 05sessions: 446 / 46wrong reply on 39 of 231 bannershabit: called a fix that made it worse$10.08 at API prices, covered by Claude + ElevenLabs plans
EP 04about 7 minfix: under 4 min61 testsread 1 lb 11.5 oz as 1 lblive run: wrong best value on real Amazon$3.87 at API prices, covered by Claude + ElevenLabs plans
EP 035 minfixes: 3 bug reportsrules: 90, then 107 sourcedright rules, wrong citations$0 on top of Claude + ElevenLabs plans
EP 0215 minfixes: 2 rounds, 5 minclean run: 27 sdependency unzip fails silentlyhabit: stopped to "wait", twice$0 on top of Claude + ElevenLabs plans
EP 013 minfix: 1 min14 / 14UTC dated invoices tomorrow$0 on top of a Claude planverdict: using it for the LLC

Follow the builds

Long-form lives on YouTube. Shorts go everywhere.