Mobile App
Screens
Detailed description of all Cookest app screens
Screens
Home Screen
The Home screen greets the user by name and surfaces the most relevant content.
Structure:
- Greeting header β "Good morning, Alice" in Playfair Display 26px
- Pantry alert strip β amber background (
#FFF8E7) with a warning icon, showing the count of items expiring within 3 days. Tappable β navigates to the Pantry screen filtered by expiring items. - "What's cooking right now?" section β horizontally scrollable featured recipe cards. Each card shows a recipe image, title (Playfair Display), cuisine tag, cook time, and a heart button.
- "Your meal plan today" section β shows the 2β3 meal slots for today from the active meal plan. Each slot has a meal type label and recipe name.
- Hosting CTA β "Having guests?" banner at the bottom. Taps through to the Recipes screen pre-filtered for "serving 4+" recipes.
Meals Screen
Weekly meal plan view with day-by-day navigation.
Structure:
- Day selector β a horizontal strip of 7 day pills (MonβSun). The active day is highlighted in sage green. Tapping a day scrolls the content below.
- Meal period sections β "Breakfast", "Lunch", "Dinner", "Snack". Each section can be empty (shows an "Add a meal" placeholder) or filled with a recipe card chip.
- Recipe chip β compact card with recipe title, cook time, and a swap icon. Long-pressing opens a bottom sheet to replace the recipe.
- Generate button β FAB (Pro only) to regenerate the full week's plan using AI scoring.
- Empty state β if no meal plan exists for the week, a centered illustration with "No plan yet β generate one?" CTA.
Recipes Screen
Searchable and filterable recipe library.
Structure:
- Search bar β full-width input at the top with a magnifier icon. Triggers debounced search (300ms) against the API.
- Category chips β horizontally scrollable chips below the search bar: "All", "Italian", "Asian", "Mediterranean", "Quick (< 30 min)", "Vegetarian". Active chip has sage green background.
- Recipe card list β vertical list of recipe cards. Each card contains:
- A recipe image (aspect ratio 16:9, rounded-16)
- Title in Playfair Display 16px
- Metadata row: cuisine tag Β· prep+cook time Β· calorie count
- Heart icon (toggleable favourite)
- Rating with star icon and count
- Empty state β "No recipes found for <query>" with a clear search button.
Recipe Detail Screen
Full recipe view with all ingredients, steps, and cook mode.
Structure:
- SliverAppBar β hero image that collapses as the user scrolls. Title fades in on scroll.
- Info pills row β horizontal row of compact pills: difficulty badge, prep time, cook time, servings selector (tappable +/β), calorie count.
- Ingredient list β grouped by category. Each item shows ingredient name, quantity scaled by the servings selector, and a pantry availability indicator (green dot = in pantry, grey = missing).
- Steps list β numbered cooking steps. Each step can be tapped to mark as done (checked state with sage green strike-through).
- Cook mode FAB β "Start Cooking" floating button. Enters a simplified step-by-step view with larger text and a timer.
- Rating section β at the bottom: 5-star tap widget and an optional notes text field.
- Favourite button β in the app bar, heart icon that toggles the favourite state with a scale animation.
Pantry Screen
Inventory management grouped by storage location.
Structure:
- Expiry alert banner β same amber strip as the Home screen, shown only when there are expiring items.
- Location accordion sections β "Fridge", "Freezer", "Pantry", "Other". Each section is collapsible. The item count badge next to each label updates live.
- Item rows β each row shows:
- Ingredient name and quantity with unit
- Expiry date (amber text if expiring within 3 days, red if expired)
- Storage location icon
- Swipe actions β swipe left to delete (red trash icon reveals), swipe right to edit (pencil icon reveals).
- Add FAB β opens a bottom sheet with ingredient search, quantity/unit input, storage location picker, and expiry date picker.
Groceries Screen
Shopping list with grouping and price comparison.
Structure:
- Grouped list β items grouped by category (Meat, Dairy, Produce, etc.). Category headers use Inter 15px SemiBold.
- Item rows β ingredient name, quantity, unit, and a checkbox. Tapping the checkbox marks the item as checked (strikethrough text + sage green checkbox).
- Price badge β if a Pro user and store price data is available, a small price badge appears next to each item showing the best available price.
- Generate from meal plan button β banner at the top offering to auto-populate the list from the current meal plan.
- Optimize button (Pro) β "Find best prices" button that calls the optimize endpoint and shows a bottom sheet with single-store vs multi-store breakdown.
- Clear checked β swipe-to-dismiss on checked items, or a "Clear all checked" button in the app bar overflow menu.
Cooking Mode
A full-screen, distraction-free step-by-step cooking experience. See the Cooking Mode user guide for the complete walkthrough.
Key UI characteristics:
- Bottom nav hidden β the bottom navigation bar is completely hidden when cooking mode is active
- Header β recipe title in Playfair Display 20px (centred) + an Γ exit button on the left; no other chrome
- Progress bar β 2px sage green line across the very top of the screen; fills left to right proportionally to step completion
- Step counter β "Step N of M" in Inter Regular 12px grey, below the header
- Step instruction β Inter Regular 16px, line height 1.7 β the largest body text in the app, intentionally sized for arm's-length reading
- Ingredient highlights β any ingredient name within the step text is underlined in sage green; tapping shows a popover with the quantity scaled to the user's household size
- Navigation buttons β Previous (grey text button, low visual weight) and Next (sage green filled pill button); asymmetry prevents accidental backward navigation; on the final step, Next becomes "Done"
- Ask AI chip β persistent "Ask AI β¦" chip in the bottom-left corner; opens a bottom sheet at 70% screen height, pre-contextualised to the current recipe and step; AI bubbles in white with soft shadow, user bubbles in sage green, Inter 14px
- Screen wake lock β cooking mode prevents the screen from sleeping
Bottom Navigation Bar
The persistent 5-tab navigation bar at the bottom of every screen except Cooking Mode.
Tabs (left to right):
| Tab | Icon | Route |
|---|---|---|
| Home | House | / |
| Meals | Calendar | /meals |
| Recipes | Book-open | /recipes |
| Pantry | Archive | /pantry |
| Groceries | Shopping-cart | /groceries |
Specifications:
- Icon library: Lucide, 22px
- Label: Inter 10px, displayed below the icon
- Bar height: 64px + device safe area inset (bottom padding)
- Top separator: 1px
#F0F0EEline β no shadow on the bar itself - Active tab: sage green filled icon + sage green label (
#7A9A65) - Inactive tabs:
#9CA3AFfor both icon and label - Transitions:
AnimatedSwitchercrossfade 150ms for icon state changes;AnimatedDefaultTextStylefor label colour transitions - FAB: No floating action button on the bar itself β each screen that needs a primary action (Pantry: Add item, Meals: Generate plan) has its own FAB positioned within the screen content