I built a Learning Management System with Django
Vijay Thapa
Posted on November 26, 2024
I created this project back in 2020 during COVID lockdown but haven't published it online yet.
During that time I was creating courses on Website Design and Development with HTML, CSS, PHP & MySQL, Software Development with C# and databases like MS SQL Server and Oracle. And all of them were free on YouTube.
Also the only revenue source was YouTube Ads revenue which was not much (since very few people watch programming videos), and I also tried selling courses on Udemy but it was also not much ($3-$5 after taking their cut).
So I wanted to create my own platform like Udemy or Skillshare where I could publish my premium courses and sell.
Thus I started building it using Django framework in Python as it was the fastest and secure way to setup the project.
But unfortunately at the end of the project development, I found out that there was no international payment option like PayPal or Strip in our country, Nepal.
And without it there was no way to accept payment from international students, also I need to pay for the services like Domain and Hosting.
So I stopped working on it though it was on the final stage.
And it's already been 4 years.
Though I've not published it, I wanted to share it with you hoping it could be helpful to you.
👨🏻💻 Built With
This Learning Management System project is built with
Front-End: HTML, CSS, JavaScript and Bootstrap
Back-End: Django (Python)
Database: SQLite (Any other database can be added)
🤩 Features of the Project
A. Admin Can
- Create a Course and then add multiple lectures on a course
- Manage Users (Students)
- Manage Social App Login
B. Users/Visitors Can
- Secure Authentication (Sign up, Login, Reset, etc.)
- Login with Google and Github
- Enroll to the course
- See Enrolled Course or Search for new Course
- Update Profile
- Change Password
⚙️ How to Install and Run this Project?
Pre-Requisites:
- Install Git Version Control [ https://git-scm.com/ ]
- Install Python Latest Version [ https://www.python.org/downloads/ ]
- Install Pip (Package Manager) [https://pip.pypa.io/en/stable/installing/ ]
- Alternative to Pip is Homebrew
Installation
Create a Folder Where you want to save this project.
Create a Virtual Environment and Activate
Install Virtual Environment
$ pip install virtualenv
Create Virtual Environment
For Windows
$ python -m venv venv
For Mac
$ python3 -m venv venv
Activate Virtual Environment
For Windows
$ source venv/scripts/activate
For Mac
$ source venv/bin/activate
- Clone This Project (Using SSH)
$ git clone git@github.com:vijaythapa333/django-courses.git
Then Enter The Project
$ cd django-courses
Install Requirements from "requirements.txt"
$ pip install -r requirements.txt
Add the Hosts
Go To Settings.py file
Then, On allowed hosts, Add [‘’].
`ALLOWED_HOSTS = ['']`
NO need to Change on Mac
- Run Server For Windows
$ python manage.py runserver
For Mac
$ python3 manage.py runserver
- Login Credentials Create a Super User with following command
$ python manage.py createsuperuser
Then Add Email, Username and Password
or Use Default Credentials
Username: admin Password: admin
Project Demo and Detail
Posted on November 26, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.