Quick instructions to run and demo Pakao for evaluation.
- Node.js (v18+)
- Python 3.10+
- npm or yarn
From the project root:
npm install
cd server && pip install -r requirements.txt && cd ..
npm run runThis starts both the frontend (Vite) and the Python backend in one terminal. You’ll see two processes: [api] (backend on port 8080) and [web] (frontend).
- App (HTTPS): https://localhost:5173
- Backend API: http://localhost:8080
If the backend isn’t running, the app shows an amber “Start the backend” banner at the top; use Retry after starting the backend, or use npm run run so both are running.
-
Frontend: Create
.env.localin the project root with your Firebase web config:VITE_FIREBASE_API_KEYVITE_FIREBASE_AUTH_DOMAINVITE_FIREBASE_PROJECT_IDVITE_FIREBASE_STORAGE_BUCKETVITE_FIREBASE_MESSAGING_SENDER_IDVITE_FIREBASE_APP_ID
-
Backend: In
server/create.envwith:GEMINI_API_KEY— Gemini API key (required for AI features)FIREBASE_PROJECT_ID— same as frontend
For guest sign-in and share preview: place Firebase service account JSON at
server/serviceAccountKey.json. -
Firestore: Create a database in Firebase Console and deploy the rules from firestore.rules so the app can read/write recipes.
- Open https://localhost:5173 (accept the self-signed cert if prompted).
- Sign in: Use “Continue as guest” or “Sign in with Google” (if configured).
- Create a recipe: Tap the + in the bottom bar → Create from YouTube (paste a cooking video URL) or Describe a dish (chat).
- Cooking mode: Open a recipe → Prepare → follow steps with voice and optional video.
- Other: Inventory, scan ingredients, share recipe, Settings (dietary prefs, meal reminders).
- Frontend only:
npm run dev - Backend only:
npm run dev:backend(from repo root; runscd server && python main.py)
The app proxies /api and /ws to the backend when both are running.