Chefy
AI-powered recipe generator that creates personalized meals from your available ingredients.
2024React, TypeScript, Tailwind CSS, Shadcn UI, OpenAI
Problem
Home cooks waste food because they don't know what to make with what they have. Existing recipe apps require you to search by dish name, not by ingredients on hand.
Constraints
- Minimum 4 ingredients required for meaningful recipe generation
- API keys must never be exposed to the client (server-side calls only)
- Responsive design, works on both desktop and mobile
- Fast response time despite LLM latency
Key Decisions
- Serverless API routes over dedicated backend
Only one API call needed (recipe generation), a full backend server would be overkill.
Used Vercel serverless functions to proxy OpenAI calls, keeping the architecture simple and cost-effective.
Trade-off: Cold start latency on first request, but zero infrastructure management and free tier sufficient for traffic. - Shadcn UI over building custom components
Needed polished, accessible UI components quickly without heavy dependencies.
Adopted Shadcn UI (copy-paste Radix primitives) for full control over styling while getting accessibility for free.
Trade-off: More initial setup than a full component library, but zero runtime dependency and full customization.
- Timeline
- 2024
- Stack
- React, TypeScript, Tailwind CSS, Shadcn UI, OpenAI, Vercel