Product Requirements Document

CampusBite

A college-canteen ordering app. Students order from their phone, pay in advance or at the counter, and get a token number with an estimated time. Orders route live to three kitchen dashboards — Veg, Non-Veg and Snacks — where staff prepare and mark them ready, and a super-admin sees everything in one place. This document specifies the student app, the kitchen dashboards and the consolidated admin CRM.

Version 1.0 · DraftDate July 2026Status For reviewClassification Confidential

1. Overview

1.1 Purpose

CampusBite lets college students skip the canteen queue: browse the menu, add items to a cart, pay online or choose pay-at-canteen, and receive a token number and estimated ready time. Every order routes to the right kitchen station — Veg, Non-Veg or Snacks — where staff see it, prepare it and mark it ready, which pushes a notification to the student. A super-admin can run a single kitchen or switch to a consolidated view of all three. This document covers the student app, the three kitchen dashboards, and the admin CRM.

1.2 Product vision

Turn the canteen rush into a calm, fair, token-based flow — students order and get on with their day, kitchens work an orderly queue, and the canteen owner sees live demand and revenue across every station.

1.3 Surfaces

Three surfaces ship together: the Student app (menu, cart, payment, token & tracking, reviews, profile), the Kitchen dashboard (one CRM that each of the three kitchens uses by picking its station), and the Super-Admin view (the same CRM with "All Kitchens" selected for a consolidated picture).

1.4 Scope

In scope (v1): phone-OTP login with name & class/college; menu with Veg / Non-Veg / Snacks; add-to-cart & checkout; online payment (gateway) and pay-at-canteen; token number & estimated time; order tracking with ready-notification; ratings & reviews; the birthday-gift capture (in-order prompt + profile) with an auto birthday reminder; the three kitchen dashboards; and the consolidated super-admin CRM. Delivered lean to fit the ₹30–50k budget.

Out of scope (v1): table reservation, delivery to classrooms, loyalty wallet/points, multi-campus rollout and deep analytics — all candidates for a later phase.

2. Personas

PersonaDescriptionPrimary goals
StudentOrders food between/after classes.Skip the queue, pay easily, know the token & time, get pinged when ready.
Kitchen staffRuns one station — Veg, Non-Veg or Snacks.See incoming orders, prepare in order, mark ready to notify the student.
Canteen super-adminOwns the canteen.Run any single kitchen or a consolidated view; track live demand, tokens & revenue.

3. Login & Onboarding

Students sign in with a phone number + OTP, then add their name and class / college so the canteen knows who's ordering. It's a single quick step — no passwords — and the profile can be topped up later (including the birthday field in Section 8). See login → order → token → ready in the demo →

4. Menu & Cart

The home screen shows the canteen menu grouped by Veg, Non-Veg and Snacks, each item with a veg/non-veg marker, price and an Add button. Students filter by category, search, and build a cart with quantities. The cart shows the bill and a single button to check out. Item category also decides which kitchen the item routes to.

5. Payment

At checkout the student chooses Pay now — via the payment gateway (UPI / card) — or Pay at canteen (cash/UPI at the counter on pickup). Either way the order is placed and a token is issued; pay-at-canteen orders are marked unpaid until collected, so the counter can reconcile.

6. Token & Order Tracking

On placing an order the student gets a token number (e.g. V-42, prefixed by kitchen) and an estimated ready time. A live tracker shows the order move through Received → Preparing → Ready for pickup. The same token appears on the kitchen dashboard so staff call it out, and on the student's screen for the counter to match.

7. Reviews & Ratings

After pickup, students can rate the order (stars), pick quick tags (e.g. "Tasty", "Hot & fresh", "Slow") and leave a short comment. Reviews feed back to the canteen so the owner sees which items and stations are landing well.

8. Birthday & Surprise Gift

CampusBite captures each student's date of birth to send a birthday treat. A gentle pop-up appears a little while into ordering — "Tell us your birthday for a surprise gift 🎁" — and the birthday field also lives in the Profile. On the student's birthday an auto reminder fires and a surprise gift (e.g. a free snack or a discount) is unlocked — a simple, delightful retention hook.

9. Kitchen Dashboards

Each of the three kitchens — Veg, Non-Veg, Snacks — runs the same dashboard, scoped to its station via a dropdown. Staff see incoming orders with token, items, student and time; tap Start preparing to move an order into the queue, and Mark ready when done — which notifies the student. A live KPI strip shows the day's orders, pending queue, average prep time and revenue for that station.

10. Super Admin — Consolidated CRM

It's one CRM: staff pick their kitchen from the dropdown to run that station, and the owner selects "All Kitchens" to get a consolidated super-admin view — total orders and revenue across all three stations, a per-kitchen breakdown, the live order feed, and menu/price management. One tool, three kitchens, one owner's-eye view.

11. Notifications

Push notifications keep students informed: order confirmed (with token & time), order ready for pickup, and the birthday reminder / gift. Notifications are the heartbeat that lets students walk away and come back exactly when their food is ready.

12. Non-Functional & Scope

Performance

Menu & cart load under 2 seconds; kitchen dashboard updates in near-real-time.

Payments

Razorpay UPI/card for pay-now; pay-at-canteen reconciliation at the counter.

Notifications

Push (FCM) for confirmed / ready / birthday; graceful fallback to in-app.

Budget-fit MVP

Lean build to fit ₹30–50k — core flow first, extras phased later.

Security & privacy

OTP login, encrypted transit, DOB stored for birthday use only.

Reliability

Works on modest campus Wi-Fi; kitchen view refreshes and recovers cleanly.

13. Order Status Model

StatusMeaning
PlacedStudent checked out; token & estimated time issued; routed to its kitchen.
ReceivedKitchen has the order in its incoming queue.
PreparingStaff tapped "Start preparing"; order is being cooked.
ReadyStaff tapped "Mark ready"; student notified to collect at the counter.
CollectedPicked up (and paid, for pay-at-canteen); order closed.
ReviewedStudent left a rating / review (optional).

14. Open Questions

  1. Token scheme — per-kitchen prefixes (V/N/S) with daily reset, or one running series?
  2. Pay-at-canteen — hold the order until a counter confirm, or trust-and-prepare with reconciliation?
  3. Estimated time — fixed per item, or dynamic from the live kitchen queue length?
  4. Surprise gift — free snack, flat discount, or a coupon; and any per-year limit?
  5. Menu management — who edits items/prices/availability, and how often do items sell out mid-day?
  6. Devices — kitchen dashboards on a shared tablet/PC per station, or the owner's phone?
Interactive demo

Order it. Cook it. Call the token.

The student app and the canteen dashboard — one system. Order from the phone, watch it hit the right kitchen, mark it ready, and flip the dashboard to "All Kitchens" for the super-admin view.

Delivery timeline

A lean 5-week build.

Five phases across three tracks, sized to the ₹30–50k budget. Core ordering flow first, then kitchens, then the admin view and delighters.

Student App Kitchen CRM Backend & Payments Milestone
Weeks 1–2

Phase 1 · Foundation & Student core

Architecture, phone-OTP login + name/class, menu with Veg/Non-Veg/Snacks, add-to-cart.

Weeks 2–3

Phase 2 · Payment, Token & Tracking

Razorpay + pay-at-canteen, token number, estimated time, order tracking & push notifications.

Weeks 3–4

Phase 3 · Kitchen Dashboards

The three-kitchen CRM — order board, Start preparing / Mark ready, token & KPIs.

Weeks 4–5

Phase 4 · Super Admin & Delighters

Consolidated "All Kitchens" view, reviews, birthday capture + gift, menu management.

Week 5

Phase 5 · Hardening & Launch

QA on campus Wi-Fi, UAT with the canteen, store submission & go-live.

Technology

Flutter app, Laravel core.

A Flutter student app, a Laravel API & web dashboards for the kitchens and admin, and just the integrations the flow needs — payments and push. Simple, cheap to host, easy to run.

Student app

Flutter

iOS + Android from one codebase — menu, cart, payment, token & tracking, reviews, profile.

  • Dart / Flutter
  • In-app payments
  • Push notifications (FCM)
  • Works on modest campus Wi-Fi
API, Kitchens & Admin

Laravel + MySQL

One backend powering the app and the web dashboards — orders, menu, kitchens & the consolidated CRM.

  • Laravel REST API
  • Kitchen & admin dashboards (Blade / Livewire)
  • MySQL + Redis
  • Kitchen role & "All Kitchens" super-admin
Integrations

Lightweight stack

Only what the canteen flow needs — nothing heavy.

  • Razorpay — UPI / card (pay-now)
  • FCM — order & birthday push
  • SMS OTP — login
  • Pay-at-canteen reconciliation

System architecture

Student AppFlutter
HTTPS · REST
Laravel APIorders · routing · notifications
Laravel modules
Auth & OTP
Menu & Cart
Orders & Tokens
Payments
Notifications
Reviews
Birthday & Gift
Admin & Reports
MySQLCore data
RedisLive queue
Outbound adapters
RazorpayUPI · card
FCMpush
SMSOTP

Why this stack

Flutter for the app

One codebase to both stores keeps the student app cheap to build and maintain — ideal for the budget.

Laravel for everything else

The API and all three dashboards live in one Laravel app on a cheap VPS — the kitchen view and super-admin view are just roles.

Real-time enough

Redis-backed live queue keeps kitchen boards and the student tracker in sync without heavy infrastructure.

Built for the budget

No costly moving parts — just payments and push — so it lands inside ₹30–50k and is easy to run.