Django ATA Educa is a web application designed to provide an online learning platform. It allows users to browse courses, register for them, and track their progress. This project is built using Django, a high-level Python web framework that encourages rapid development and clean, pragmatic design.
- User Authentication: Sign up, log in and log out.
- Course Management: Create, update, delete, and view courses.
- Lesson Management: Add lessons to courses with rich content.
- Admin Interface: Admins can manage courses, lessons, and users via Django’s admin interface.
- Backend: Django 5.x, Django Rest Framework
- Frontend: HTML, CSS, JavaScript
- Database: SQLite (default, can be replaced with PostgreSQL or MySQL)
- Other: Docker for containerization, Nginx as a web server, uWSGI for serving Django applications.
- Python 3.8+
- Docker and Docker Compose
- Git
-
Clone the repository:
git clone https://github.com/TAnd-dev/django-ata-educa.git cd django-ata-educa -
Create a virtual environment and activate it:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install the dependencies:
pip install -r requirements.txt
-
Run migrations:
python manage.py migrate
-
Create a superuser:
python manage.py createsuperuser
-
Run the development server:
python manage.py runserver --settings=base.settings.local_settings # Or --settings=base.settings.prod_settings
The application will be available at http://127.0.0.1:8000/.
-
Build and start the containers:
docker-compose up --build
-
Access the application:
The application will be available at http://localhost/
Admin interface: http://localhost/admin/
API root: http://localhost/api/