A healthcare feedback and complaint platform.
- /frontend: React + Vite + TypeScript + Tailwind CSS application.
- /backend: Node.js + Express + Firebase Admin SDK server.
The project is configured for easy deployment. Use the unified commands from the root directory:
Install all dependencies for both frontend and backend:
npm run install:allBuild the optimized frontend:
npm run build:frontendStart the production server (serves both API and Frontend):
npm startRun both frontend and backend in development mode:
npm run devCreate a .env file in the /frontend directory using the following template:
VITE_FIREBASE_API_KEY=your_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_project_id.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
VITE_FIREBASE_APP_ID=your_app_id
VITE_API_URL=http://localhost:5000Note: The VITE_API_URL should point to your backend server.
- Place your
serviceAccountKey.jsoninside the/backenddirectory. - Ensure your
.envin the/backenddirectory has the correctPORT.
The project includes firestore.rules and storage.rules at the root. You can deploy these using the Firebase CLI or copy them to the Firebase Console.
- Firestore: Allows public creation of complaints and restricted admin access.
- Storage: Limits evidence uploads to 10MB and specific formats (Audio, Video, Images, Docs).