A modern web application for ECG (Electrocardiogram) learning. This application provides a user-friendly interface for taking ECG classification quizzes.
- Support teacher and student profiles tomange groups
- Personalized ECG quizzes, that provides questionsbased on the studetn's knowladge
- Secure user authentication
- Modern, responsive web interface
- Docker-based deployment for easy setup
- Django: Python web framework for building robust APIs
- Django REST Framework: Toolkit for building Web APIs
- PostgreSQL: Reliable and powerful open-source database
- React: Modern JavaScript library for building user interfaces
- Material-UI: React component library implementing Google's Material Design
- Axios: Promise-based HTTP client for API requests
- Docker: Containerization platform for consistent development and deployment
- Docker Compose: Tool for defining and running multi-container applications
- Nginx: High-performance web server and reverse proxy
- Gunicorn: Python WSGI HTTP Server for production deployment
ECG-App/
├── backend/ # Python backend service
├── frontend/ # React frontend application
├── scripts/ # Utility scripts
├── dataset/ # ECG dataset storage
└── ssl/ # SSL certificates (for production)
- Docker
- Docker Compose
-
Clone the repository:
git clone <repository-url> cd ECG-App
-
Copy the environment file:
cp .env.example .env
-
Start the development environment:
sh scripts/dev/start_app.sh
The application will be available at:
- Frontend: http://localhost:3000
- Backend API: http://localhost:8000
- Set up SSL certificates in the
ssl/directory - Configure environment variables in
.env - Provide the server
IPand domain parameters inbackend/backend/ecg_backend/settings.py - Build and start the production containers:
sh scrips/prod/start_app.sh