This is the frontend for the Zendalona Chatbot application.
- Chat interface with accessibility options
- Admin panel for system management
- Firebase Google authentication
- Feedback system with user information
-
Install dependencies:
npm install
-
Create a Firebase project at https://console.firebase.google.com/
-
Enable Google authentication in your Firebase project
-
Copy the Firebase configuration values and add them to the
.envfile: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_FIREBASE_MEASUREMENT_ID=your-measurement-id -
Update the admin email list in
src/contexts/AuthContext.jsx:const adminEmails = ['admin@yourdomain.com']; // Add your admin emails here
Run the development server:
npm run devBuild for production:
npm run buildThis application can be deployed using Docker. See DEPLOYMENT.md for detailed instructions.
-
Build and start the application:
docker-compose up -d
-
Access the application at
http://localhost:8080
Alternatively, you can use the provided shell scripts:
-
To build and run the application:
./run-docker.sh
-
To stop and remove the application:
./stop-docker.sh
-
To view the application logs:
./logs-docker.sh
- Users can login with Google authentication
- Only authenticated users can submit feedback
- Only admin users can access the admin panel
- Feedback is associated with the logged-in user
- User information (name, email) is stored with feedback
- Admins can view feedback along with user information