PromptFork

Build a DoorDash-style food delivery app

A staged build spec for a 3-role food-delivery MVP (customer / restaurant / driver) on Next.js + Supabase + Stripe.

Open in Studio
Prompt
Build an MVP food-delivery app (DoorDash-style).

Stack: Next.js + Tailwind + Supabase (auth, Postgres, storage).
Roles: customer, restaurant, driver.
- Customer: browse restaurants, search/filter, menu with options, cart, checkout (Stripe test mode), live order status.
- Restaurant: manage menu, accept/reject orders, mark ready.
- Driver: see available deliveries, accept, update status, simple map view.
Include auth, role-based routes, a seed script with 5 restaurants + menus, and a clean schema.
Build it step by step. Show me the data model FIRST and wait for approval, then build. Tell me which env keys to set.

Approve the schema before it writes the app — it keeps the whole build coherent.
Source
promptfork seed
License
CC-BY-4.0
Published
6/22/2026

More prompts you might like

Next.js 15 App Router page with streaming, caching, and server data

Scaffold a production App Router page: Server Component data fetching, Suspense streaming for instant TTFB, correct cache strategy (fetch cache vs unstable_cache vs revalidatePath), loading/error boundaries, and generateMetadata — with the non-obvious patterns most tutorials skip.

New

Tailwind analytics dashboard with animated stat cards, dark mode, and skeleton loading

Production-grade dashboard layout: KPI cards with counting animations and trend sparklines, a chart area, activity table — all with dark mode, skeleton loading states, and responsive breakpoints defined to the pixel.

New

Supabase RLS: owner-write, public-read policies for a table

Generate correct, non-recursive RLS policies so anyone reads published rows and only owners edit their own.

New

Stripe webhook handler with signature verify + idempotency

Production-ready Stripe webhook route that verifies the signature and processes events exactly once.

New

.cursorrules for a strict TypeScript + React codebase

A tuned .cursorrules file that keeps Cursor's agent on-convention: strict types, no dead code, match existing patterns.

New

Refactor a React component into clean custom hooks

Extract stateful logic from a bloated component into typed, testable custom hooks.

New