Inspiration

Eitan's brief resonated with me the most. I always save recipe videos that I never cook and so do a lot of friends + family. The problem isn't finding recipes, it's everything after: shopping and actually cooking. That's the most annoying part and I wanted to make it as frictionless as possible.

What it does

Paste a YouTube or website URL, AI extracts the recipe from the video description and transcript into a structured format with ingredients, steps, and timers.

The core of Shallot is Cook Mode. Each step is on a separate screen in large, readable text so you can cook along. Swipe or tap to navigate between steps. It shows the ingredients needed for each step so you can stop going back and scanning the full ingredient list for amounts. This is something I haven't seen other recipe apps do yet.

Timers are built right into the steps, one tap to start and they stay with you as you move through the recipe. Your screen stays on the whole time.

Need to buy ingredients first? One tap adds everything to your shopping list, sortable by aisle so you can find things faster in the store.

How it was built

Solo, 3 weeks. Build the base functionality with Rork. Then exported and continued developing in React Native + Expo (well, Claude Code did). Supabase Edge Functions, OpenAI GPT-4o-mini for recipe extraction, RevenueCat for the freemium model (10 free imports, unlimited with Pro), TypeScript everywhere.

The AI pipeline is the interesting bit. YouTube imports try the video description first (cheaper), then fall back to the full transcript. Websites pull JSON-LD structured data first, then enrich with AI. Both paths produce the same structured recipe format with per-step ingredient refs.

Challenges I ran into

YouTube transcripts are messy. No punctuation, vague quantities, ingredients mentioned in passing. Getting reliable structured output took a lot of prompt iteration and strict JSON schema enforcement.

Scope was the other big one. Three weeks meant hard cuts: no TikTok, no voice control, no cloud sync. Cook Mode and the import pipeline were non-negotiable, everything else got cut.

Accomplishments that I'm proud of

Cook Mode actually works and feels great. Per-step ingredients make following a recipe feel completely different. The YouTube-to-recipe pipeline is surprisingly solid across random videos.

What's next for Shallot

TikTok/Instagram import, voice control in Cook Mode, cloud sync, share extension, and meal planning.

Built With

Share this project:

Updates