Skip to main content

§ masterplan.md

Hyperlocal Food Circle

A classy, minimal food-ordering site for a single neighborhood that only shows today's menu from home cooks and cloud kitchens.

All ideas
Classy Minimal

01

App overview and objectives

A neighbourhood-scale food ordering site that only ever shows what is cooking today, within walking or short-ride distance. One page, today's menu, order before the cut-off. The objective is fewer choices and better food, not another endless marketplace.

02

The problem worth solving

Big delivery apps drown neighbourhood cooks in fees and search results. A single-neighbourhood site with a daily cut-off matches how home kitchens actually cook — in batches, for a known number of people.

03

Target audience

  • Primary — Home cooks and tiny cloud kitchens serving a few hundred nearby households.
  • Secondary — Residents who want fresh home-style food without scrolling through a thousand restaurants.

04

Roles and permissions

  • Visitor — read-only public pages, can sign up.
  • Member — owns their own records, cannot see other users' data.

05

Core features

  • Today's menu with per-dish quantity remaining and an order cut-off countdown
  • Cook profiles with kitchen photos, hygiene notes and ratings
  • Guest checkout with address pinning and cash or online payment
  • Order tracking states: accepted, cooking, out for delivery, delivered
  • Cook dashboard to publish tomorrow's menu and cap quantities
  • Community board for requests and recurring favourites

Deliberately later

  • Weekly subscription meals
  • Multi-neighbourhood expansion
  • Rider assignment and routing

06

Technical stack

React front end, Postgres for orders and menus, realtime subscriptions for status, hosted auth for cooks.

Why: Order state changes must appear instantly for both sides; everything else is standard CRUD that a managed backend handles well.

Alternatives: A WhatsApp-and-spreadsheet operation (zero build cost, breaks past ~30 orders a day) or a full marketplace platform (over-engineered for one neighbourhood).

07

Conceptual data model

Cook — name, kitchen story, photos, service area, payout details

Dish — cook, name, description, price, allergens, photo

MenuDay — cook, date, dishes with quantity caps, cut-off time

Order — customer, items, address, total, status, timestamps

Review — order, rating, comment, cook reply

08

Integrations

  • Payments
  • Map and address autocomplete
  • SMS or push notifications for order status

09

UI design principles

  • Generous whitespace, a two-font system, and a palette of three colours at most.
  • Photography and typography do the work; borders, shadows and gradients stay almost invisible.
  • Every screen has one clear primary action, placed in the same spot each time.

10

Security considerations

  • Customer addresses visible only to the assigned cook and only until delivery completes.
  • Cook payout details stored with the payment provider, never in the app database.
  • Rate-limit ordering to prevent fake-order attacks on small kitchens.

11

Development phases

Phase 1 — Prove the core

  • — Today's menu with per-dish quantity remaining and an order cut-off countdown
  • — Cook profiles with kitchen photos, hygiene notes and ratings
  • — Guest checkout with address pinning and cash or online payment
  • — Static content and design system in place
  • — Basic analytics

Phase 2 — Make it real

  • — Order tracking states: accepted, cooking, out for delivery, delivered
  • — Cook dashboard to publish tomorrow's menu and cap quantities
  • — Community board for requests and recurring favourites
  • — Accounts, sign-in and password reset
  • — Empty, loading and error states everywhere

Phase 3 — Polish and launch

  • — Performance, accessibility and SEO pass
  • — Legal pages, contact route and 404 handling
  • — Wire up: Payments
  • — Wire up: Map and address autocomplete

Phase 4 — Grow

  • — Weekly subscription meals
  • — Multi-neighbourhood expansion
  • — Rider assignment and routing

12

Challenges and solutions

Risk — Empty-menu days kill the habit

Solution — Guarantee a minimum number of publishing cooks per day before launch; show tomorrow's menu when today sells out.

Risk — Food safety complaints

Solution — Mandatory hygiene checklist per cook, visible on the profile, plus a fast complaint path.

Risk — Delivery logistics

Solution — Start with cook-delivered or customer pickup only; add riders once volume justifies it.

13

Future expansion

  • Neighbourhood franchise model
  • Catering for small events
  • Ingredient group-buying for cooks

14

Page list (13 pages)

  1. 01 PUBLIC Today's Menu — The whole product: what is cooking, how much is left, when ordering closes.
  2. 02 PUBLIC Cooks — Who is behind each kitchen, with photos and ratings.
  3. 03 APP (signed in) Order — Cart, address and payment in one short flow.
  4. 04 APP (signed in) Track — Live status for an active order.
  5. 05 PUBLIC Community — Requests, feedback and recurring favourites.
  6. 06 AUTH Sign up — Create an account with email or a social provider.
  7. 07 AUTH Log in — Return to the account, with error and lockout states.
  8. 08 AUTH Reset password — Request a reset link and set a new password.
  9. 09 APP (signed in) Account settings — Profile, email, password, language and delete account.
  10. 10 PUBLIC Contact — Contact form plus real address, phone and email.
  11. 11 LEGAL & SYSTEM Privacy policy — What data is collected, why, and how to remove it.
  12. 12 LEGAL & SYSTEM Terms of service — Rules of use, liability and account termination.
  13. 13 LEGAL & SYSTEM 404 not found — Friendly dead end with search and links back.

15

Page map

PUBLIC           AUTH               APP (signed in)      LEGAL & SYSTEM
───────────────  ─────────────────  ───────────────────  ───────────────────
├─ Today's Menu  ├─ Sign up         ├─ Order             ├─ Privacy policy
├─ Cooks         ├─ Log in          ├─ Track             ├─ Terms of service
├─ Community     └─ Reset password  └─ Account settings  └─ 404 not found
└─ Contact

key flows:
  Today's Menu ──▶ Order
  Order ──▶ Track
  Cooks ──▶ Today's Menu
  Track ──▶ Community