Scan, wait, dine – no more standing in line.
Restaurant guests waste time waiting in physical lines and have no visibility into wait times, while staff struggle to track and manage the waitlist efficiently.
- Core functionality generated from your idea
+------------------+ +---------------------+ +------------------+
| | HTTP | | HTTP | |
| Next.js 16 +------->+ FastAPI Backend +------->+ DO Inference |
| Frontend | REST | Python 3.14 | AI | (gpt-5-mini) |
| (port 3000) +<-------+ (port 8000) +<------+ |
| | JSON | | JSON | |
+------------------+ +----------+----------+ +------------------+
|
+--------v--------+
| PostgreSQL |
| (psycopg 3.3) |
+-----------------+
| Method | Path |
|---|---|
GET |
/health |
| Layer | Technology | Version |
|---|---|---|
| Runtime | Python | 3.14+ |
| Backend | FastAPI + uvicorn | 0.135.1 |
| Frontend | Next.js + React | 16.1.6 / 19.2.4 |
| Database | PostgreSQL + psycopg | 3.3.3 |
| AI | DO Serverless Inference | gpt-5-mini |
| Styling | Tailwind CSS | 4.2.1 |
- Python 3.14+
- Node.js 24+
# Backend
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
cp .env.example .env # fill in your keys
uvicorn main:app --reload --port 8000
# Frontend (new terminal)
cd web
npm install
npm run devCopy .env.example to .env and fill in values:
API_BASE_URLENVIRONMENTLOG_LEVEL
This app is designed for DigitalOcean App Platform:
name: queuebite
services:
- name: api
github:
repo: Two-Weeks-Team/queuebite
branch: master
build_command: pip install -r requirements.txt
run_command: uvicorn main:app --host 0.0.0.0 --port $PORT
http_port: 8080
instance_size_slug: apps-s-1vcpu-0.5gb
envs:
- key: DIGITALOCEAN_INFERENCE_KEY
scope: RUN_TIME
type: SECRET
static_sites:
- name: web
github:
repo: Two-Weeks-Team/queuebite
branch: master
source_dir: web
build_command: npm install && npm run build
output_dir: web/.nextGenerated by vibeDeploy | Vibe Score: **60.4**