Anuar Zhumaev
An iPhone standing on one corner on a kitchen table, showing a day of the meal plan with its cost

Bujetor App · Product design · 2024–2026

A meal plan you can talk to

Bujetor plans a family’s meals to a budget. A person says how much they can spend, for how many days and who is eating, and gets a plan with a price for every dish and a shopping list. I led its design as senior product designer, with two junior designers, a product owner and a team of developers.

Client
Bujetor App
Role
Senior product designer
Status
In development
Platform
iOS
The welcome: “Hi there! I’m Bujetor — your personal kitchen companion. I take care of meal planning, detailed shopping list, and cooking guidance. You just handle the skillet.” Below, a still of a puppet chef and a Continue button
Today, £22.15: a strip of dates, breakfast open as a collage of three dishes with its cost, lunch and dinner as rows with theirs, and a View shopping list button
The catalog’s Meals sheet, open over the day: search, a Filter button and a grid of six dishes with prices, over the tab bar

The welcome, a day of the plan with its cost, and the catalog.

Where it started
The client came with the idea of a meal planner that talks to people through a language model. Everything else was open. We worked it out as a team over many iterations.
What we built
A chat that answers with cards. A card opens a screen where the plan can be changed by tapping, and what is done there is written back into the chat.
Scope
Onboarding, the conversation and its cards, the plan from week to dish, the catalog, the shopping list and ordering, cooking, profiles and support, in light and dark themes.

Directions we dropped

Three other models were dropped on the way.

Everything in the chat
A family’s week is a table of days, meals and people, and editing a table by talking is slow. It would also break what people expect of an app: how screens behave, how one follows another, how a form looks.
A Pinterest for meals
Assembling and reviewing a plan in it was cumbersome, and so was tracking habits and savings.
A Tinder for meals
We wanted a long relationship with a family, with goals set and habits, allergies and preferences learned over time. Tinder’s model was too fast and casual for that.

Chat and screens

Why a chat

We built the app around a chat because it is often easier to say or type what is wanted than to find the button for it, most of all in an app that is new to the person.

The assistant answers with cards for a plan, a set, a dish, a person or a link, and each card opens its screen.

A plan card in the chat, “Menu for three, 1 day, ~£27”, with photos of its dishes, their number, the price per dish, the saving and the allergies; below it a dish card, Honey Garlic Chicken
Plans & meals
In the chat: “Step 1/2: Pick your base ingredient”, a card of ingredient chips from Asparagus to Green bell pepper, page 1 of 3, and a Finished button
Ingredient selector
In the chat: “Step 2/2: Select meals you prefer”, a dish card, Spaghetti Aglio Olio With Chicken, meal 1 of 3, and a Confirm selected button
Offered dishes

The assistant has no bubble

The assistant is the app, so its replies are set on the app’s own background and only the person’s messages are in a bubble. This also separates what was asked from what was answered, and the chat is easier to read.

Common answers are offered as chips, and a voice message works too.

A question about the length of the plan with three answer chips, 1 day, 3 days and 7 days, and another with Today, Tomorrow and All 5 days
A question with chips
The budget question with chips for £25, £50 and £100 and a Confirm button, “Or just write me the numbers below!”, a question about the household, and the answer in a dark bubble: “Its me Jakob, Maria, and a small Jimmy”
An answer in a bubble
Two voice messages in dark bubbles with waveforms: one offers “View transcription”, the other shows its text. Between them the assistant’s replies, a link to Tomorrow’s dinner and a card for Alice
A voice message and its transcription

Links

When the assistant changes something, it says so and links to the screen that changed, such as a meal, a day, a person’s card or the preferences.

Four assistant messages, each ending in a link: Preferences, Friday breakfast, Jimmy’s card and Friday
Four kinds of link
A request to replace a salad with something more meaty; the assistant offers three dishes as cards, the first one Parmigiana italiano
A dish offered as a card
The dish opened from its card, under the title Meal replacement: Parmigiana italiano, £2.35, its weight, calories and cost, a Pick this meal button, its nutrition and its ingredients
The meal it opens

Ways to plan

Starting a plan

A plan can start in five ways. Each ends with a plan card in the chat.

  1. Answer the assistant. It asks for the days, the budget and who is eating. The second time it remembers the family and asks only what has changed.
  2. Edit a suggested plan. Replace, remove or add a dish, by asking or by tapping.
  3. Pick a set. A ready-made plan with its price. If it contains allergens, the app asks before adding it.
  4. Pick dishes. Tick up to 20 in the catalog, then add them to a plan or generate a new plan from them.
  5. Pick groceries. Tick up to 10 products, and the app shows dishes that use all or some of them.
A second plan: the user asks for a new menu and answers “Yeah the same seven days 50 pounds”; the assistant asks whether anything has changed in the household
1 · The assistant asks again
The user asks to replace a salad with something more meaty; the assistant offers dishes as cards, the first one Parmigiana italiano
2 · A replacement offered as cards
The Sets section of the catalog: “Set for three, 1 day, £27” with its dishes, price per dish and allergies
3 · Sets in the catalog
A set’s page, “Menu for three”: 12 meals, £27 in total, its allergies, four days, and the first day’s meals
A set
A dialog over the set: “Confirm allergies. You have picked a set that contains allergens for: Dairy, Gluten, Seafood allergies. Please confirm that you agree.”
Allergens confirmed
The Meals catalog with three dishes ticked and a button, “Add 3/20 meals to meal plan”
4 · Dishes ticked
A dialog: “Add to meal plan?” with two choices, Add to existing plan and Generate new meal plan
Add or generate
Groceries, Spices: four products ticked and a button to find meals with the 4 of 10 selected
5 · Groceries ticked
“Create new meal plan”: dishes that have all or some of the chosen ingredients, and a button counting selected meals out of 20
Dishes that use them
In the chat: “Step 1/2: Pick your base ingredient”, a card of ingredient chips from Asparagus to Green bell pepper, page 1 of 3, and a Finished button
The same in the chat

A past plan can also be repeated from History. It goes on the closest free day.

By tapping and by asking

Adding a dish from the catalog by tapping takes four choices: which plan, who for, which day and which meal. In the chat it is one sentence: “Please add Cranberry muffin to latest meal plan, Friday 23 April, for Jimmy’s breakfast.” We kept both. Asking is quicker for someone who knows what they want, and the four screens work the way people expect a form to work.

Choose meal plan: two plans as cards, the latest one selected
Which plan
Choose a person: Jimmy, Maria, Jakob or Everyone
Who for
Choose a day: Thursday 23 or Friday 24, each with seven meals planned
Which day
Choose meal time: Breakfast, Lunch or Dinner, each showing what is planned
Which meal
The chat: “Please add Cranberry muffin to latest meal plan, Friday 23 April, for Jimmy’s breakfast”, the assistant’s confirmation and a link to the meal
The same request in the chat

The catalog

One sheet with three sections: meals, groceries and sets. It has search, and filters for price per dish, meal time, cooking time and allergies. Prices are those of the store the person chose.

The catalog’s Meals sheet, open over the day: search, a Filter button and a grid of dishes with prices, over the tab bar
Meals
The catalog on Groceries, in Vegetables: search, a Filter button and a grid of products with their average price, from Carrots and Flour to Parsley and Pasta
Groceries
A dish opened from the catalog, Cranberry muffin, £1.07: its weight, calories, cuisine and cooking time, an Add to meal plan button, and its ingredients with their amounts
A dish

When things clash

Conflicts

A family’s rules often conflict. A diet contradicts an allergy, a vegetarian is given a meat dish, a new plan is set for a day that is already planned. The app asks what to do and offers the answers.

When a person adds such a dish themselves, we didn’t want to interfere. The app says what it has noticed, and “Add it anyway” is one of the answers.

Diets in Jimmy’s card with a bar at the bottom: “Your choice of Ketogenic diet and Dairy allergy are contradicting”, and a Go to chat button
A diet against an allergyA bar that stays, with a link to the chat.
A dialog over the list of diets: “Conflicting preferences. Do you want to remove the Ketogenic diet from your preferences?” with Remove and Cancel
The same in a dialogIt offers to remove the diet.
The user asks to add a meat dish; the assistant answers that it conflicts with the Vegetarian diet and offers Remove, Cancel and Add it anyway
A dish against a dietRemove the diet, cancel, or add it anyway.
After Remove: “Updated your preferences to reflect the latest change”, with a link to Jake’s preferences
After RemoveThe change and a link to the preferences.
The assistant opens the question itself: “I see you want to add ‘Bespoke meaty madness’ to your meal plan. This conflicts with your Vegetarian diet”
The same conflict by tappingThe assistant mentions it in the chat.
The user asks for a plan starting on a day that has meals; the assistant offers Replace the meals, Keep the meals and Plan on the next empty day
A day already plannedReplace the meals, keep them, or use the next empty day.
A meal time page with a snackbar: “You’ve deleted the ‘meat insanity’ dish from the meal plan”, a countdown and an Undo button
A deletionA snackbar with a countdown and Undo.
The user types gibberish; the assistant answers “Sorry, I didn’t catch that. Could you rephrase?”
A message not understoodThe assistant asks to rephrase.

Where it stands

The app is in development. The client and the testers approved the product model and praised it. Most of the feedback was about the business side, which is integrating retailers and delivering the food. That work is still open.

The phone on the cover is iPhone 14 Max (Blend) by fiedleradam358, CC BY 4.0, with its screens replaced.