A comprehensive patient queue management and navigation system designed for clinics. Handles patient registration, workflow management, staff task tracking, and digital signage for patient calls.
- Reception Portal: Register patients, assign visit types (Workflow), and flag emergencies.
- Staff Panel: View active queue, call patients for specific tasks, and mark tasks as complete.
- Display Screen: Public-facing digital signage with audio callouts and pathfinding maps.
- Workflow Engine: Customizable patient journeys (e.g., Vitals -> Doctor -> X-Ray).
- Real-time Updates: changes reflect instantly across all screens using WebSockets.
- Frontend: React, Vite, TailwindCSS, Framer Motion
- Backend: Node.js, Express, Socket.io
- Database: SQLite (better-sqlite3)
- Security: Helmet, Rate Limiting, Session Auth
- Node.js v18+
- NPM
-
Install Dependencies
# Install server deps cd server npm install # Install client deps cd ../client npm install
-
Environment Setup
- Copy
server/.env.exampletoserver/.env - Copy
client/.env.exampletoclient/.env - Important: Update
SESSION_SECRETandADMIN_PASSWORDinserver/.env
- Copy
-
Run Development Mode Open two terminals:
Terminal 1 (Server):
cd server npm run devTerminal 2 (Client):
cd client npm run dev
See DEPLOYMENT.md for detailed production setup instructions.
/client: React frontend application/server: Node.js Express API and WebSocket server/server/data: SQLite database storage
GET /queue: Get current patient queuePOST /ticket: Create a new patient ticketPOST /task/call: Call a patient for a task (Protected)POST /task/complete: Complete a task (Protected)GET /auth/status: Check login status
Private / Proprietary