MealMatch AI
Meal planning on generative AI, to a real budget, in four languages
January 2026 - Present
- plan, list and workout
- < 1 min
- languages
- 4
- budgets in real money
- £
- React
- Node.js
- Express
- MongoDB
- Anthropic Claude API
- Stripe
- Nodemailer
- Tailwind CSS
Give it a budget and some preferences and it returns a seven-day meal plan, the shopping list to buy it, and a workout routine alongside. Under a minute, start to finish.
The web app is unremarkable. React front end, Express API, MongoDB, Stripe Embedded Checkout for payment, email verification through Nodemailer with bcrypt hashing on the passwords. That last part isn’t only good manners. Unverified accounts are how strangers get free use of an endpoint that costs you money per call, so the verification email is a cost control as much as a security one.
The part that was actually hard
Prompting.
A plan has to hit a budget in pounds and stay inside it. Not roughly. A model will happily produce a beautiful week of meals that costs £94 when you asked for £45, and it will be confident about it. Getting costs that survive contact with a real Tesco shop meant constraining the output and checking it rather than trusting the number that came back.
Then there’s the food. It’s in English, Romanian, Spanish and Italian, and a plan that’s merely translated is worse than useless. Ask for a Romanian week and get seven days of pasta with a Romanian label on it, and anyone actually Romanian closes the tab. The recipes have to look right to somebody from that country, which is a prompt engineering problem, a data problem, and partly a taste problem I could only check by asking people.
I got that wrong for a while before I got it right.