A simple E-Learning platform based on the Django web framework.
-
Clone the repository
-
Ensure you have Python 3.11 or higher installed
-
Run
python -m venv envto create a virtual environment -
Run
source env/bin/activateto activate the virtual environment (Linux/MacOS) orenv\Scripts\activate(Windows) -
Run
python -m pip install -r requirements.txtto install the required packages from requirements.txt -
Create a
.envfile (as shown in the.env.samplefile) in the root directory of the project and add the following variables as per your database configuration (PostgreSQL is used in this project):SECRET_KEY=your_secret_key DB_NAME=your database name DB_USER=your database user DB_PASSWORD=your database password DB_HOST=your database host DB_PORT=your database portNote: The
SECRET_KEYvariable is used by Django to provide cryptographic signing, and should be kept secret.Run
python -c 'from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())'in a terminal to generate a new secret key. -
Run
python manage.py makemigrations -
Run
python manage.py migrate -
Run
python manage.py runserver -
Visit
localhost:8000in your browser
- Create, update and delete users, courses, lessons, and quizzes
- View user progress
- View user quiz results
- Every aspect of the platform
- Create study materials, quizzes, and assignments
- Mark and grade assignments, quizzes, tests
- View courses, lessons, and quizzes
- Download study materials
- Take quizzes
- View quiz results
- Take assignments
- Send each other messages using django-messages
- For production, the platform can can be deployed using Azure App Service.
- Follow guidelines on how to set up app service, a postgresql database as well as an Azure storage accounts, then pass them as environment variables.