I am not a chef, a nutritionist, or a developer with a fancy pipeline. I'm an Efficiency Engineer who got tired of the Sunday-night question: "What are we even eating this week?" So I did what I now do with almost every annoying, repetitive problem — I handed it to an AI and watched what happened. The result was a little meal-prep assistant that plans a week of weight-loss-friendly meals, picks the food, builds a shopping list, drops it into an online grocery pickup cart, and writes out every recipe. Here's exactly how I built it, and how you can rebuild it in an afternoon.
The problem I was actually solving
Meal planning fails for me at the boring parts, not the cooking. Deciding what to eat, making sure it roughly fits a calorie goal, turning that into a shopping list, and then actually ordering it — that's four separate chores, and skipping any one of them means the whole plan collapses by Tuesday. I wanted something that handled the whole chain end to end so the only thing left for me to do was cook.
- Plan 7 days of meals that lean weight-loss-friendly (high protein, sensible portions).
- Pick specific groceries — not "vegetables" but "two red bell peppers."
- Build a categorized shopping list I can actually shop from.
- Get it into my grocery store's online pickup cart with minimal fuss.
- Produce a real recipe for every single meal, not just a name.
The setup
There's barely any setup, which is the point. I used Claude in the browser — no API keys, no install, no credit card required to start. The entire "assistant" is really one carefully written prompt plus a few follow-up messages. The trick isn't the tooling; it's being specific about what you want and giving the model the constraints it needs to be useful.
The prompt that did the heavy lifting
I started with one big system-style message that set the role, the constraints, and the exact output format. Being explicit about the format is what turns a vague chat into something that behaves like a tool. Here's the prompt I used, lightly cleaned up:
You are my weekly meal-prep assistant. Plan 7 days of dinners for one
adult trying to lose weight (target ~1,800 kcal/day, high protein,
minimal added sugar). Constraints:
- No shellfish. Budget-friendly, common grocery-store ingredients.
- Reuse ingredients across meals to cut waste and cost.
- Each meal should take under 35 minutes of active cooking.
Return THREE clearly separated sections:
1. A day-by-day meal plan with rough calories + protein per meal.
2. A shopping list grouped by store section (produce, protein,
pantry, dairy, frozen), with exact quantities.
3. A full recipe for each dinner: ingredients with amounts, then
numbered steps.The magic words there are "three clearly separated sections" and "exact quantities." Without them you get a chatty blob. With them you get something you can paste straight into a grocery app.
The step-by-step build
- 1
Generate the plan
Send the prompt above. Read the day-by-day plan first and sanity-check it against your taste and goals. I swapped two dinners I didn't like by simply replying "swap day 3 and day 6 for chicken-based meals."
- 2
Lock the shopping list
Ask the model to consolidate duplicate ingredients and give you one clean list grouped by store section. This is where reusing ingredients across meals pays off — fewer items, less waste.
- 3
Get it into the cart
I asked Claude to format the list as plain "item — quantity" lines so I could quickly search each one in my store's pickup app. For stores with a paste-a-list feature, this is nearly one tap. (If you use the API later, this is the step you'd automate.)
- 4
Pull every recipe
Finally, ask for the full recipe for each dinner with amounts and numbered steps. I saved these into a single note on my phone so the whole week lives in one place.
The breakthrough wasn't a smarter model — it was realizing I should make the AI produce a format I could act on, not just an answer I had to re-process myself.
What I'd do differently
If I rebuilt this as a real app, I'd connect the grocery store's API so the cart step is fully automatic, and I'd store my preferences (allergies, favorite proteins, calorie target) so I don't retype them each week. But that's polish. The plain-chat version already saved me the Sunday-night spiral, and that was the entire goal.
Key takeaways
- You can build a genuinely useful "assistant" with zero code — just a precise prompt.
- Specify the output format; it's the difference between a chat and a tool.
- Start with the plain version, automate later only if it earns its keep.
That's the whole project. No degree, no framework, no permission required — just curiosity and a problem worth solving. If you build your own version, I'd genuinely love to see it.



