Production-structured crisis resilience platform for emergency health operations.
- Secure authentication (JWT + hashed passwords)
- Country-aware access control (Lebanon, Palestine, Turkiye, Italy, Spain)
- Hospital overload prediction dashboard (24-48h horizon)
- Rapid triage scoring engine
- Resource referral guidance
- Gemini-powered operational advice endpoint (optional)
- Responsive web UI for laptop and mobile
- Local-first setup with file-backed JSON persistence
backend/- Express + TypeScript + file-backed datastore + AI/decision servicesfrontend/- React + Vite + TypeScript responsive dashboard
- Install dependencies
npm run install:all- Configure backend env
cp backend/.env.example backend/.envSet:
JWT_SECRETwith a strong secret (20+ chars)GEMINI_API_KEYwith your private key (optional but recommended for AI advice)CORS_ORIGINcan be a comma-separated list for fixed frontend origins. Localhost ports are allowed automatically for local runs.
- Configure frontend env
cp frontend/.env.example frontend/.env- Start backend
npm run dev:backend- Start frontend (new terminal)
npm run dev:frontend- Open
- Frontend:
http://localhost:5173 - Backend health:
http://localhost:4000/health
npm run build
npm run start:backendServe frontend/dist with any static host if needed.
- Register with
email + password + country - Login requires matching selected country
- First registered user is auto-promoted to
admin - Non-admin users are restricted to their assigned country
Treat API keys as secrets. Keep them only in local .env files and rotate if exposed.
- Register as responder.
- Open dashboard and review risk board.
- Select a hospital and generate AI action plan.
- Run triage with sample patient data.
- Click
Advance Simulationto simulate incoming crisis pressure.