Free Python Django School management system

Free Python Django School management system
Written by Kami Shah

Free Python Django School management system

StudX is a web-based school management system written in Python 3 and using Django framework

Free Python Django School management system

StudX is a web-based school management system written in Python 3 and using Django framework. The application records personal data of student, teacher and Staff people. It allows to manage all the information that a school needs on a daily basis.

loudspeaker Notice: This project has been initiated while learning Python 3 and the Django framework. The purpose of this project is purely for me the opportunity to learn coding and designing a web system and eventually to experience the challenges a full stack developper might face in its day job. It is still under development and all features are not completed yet! If you notice any coding error or security issue or if you have recommendations on design, coding or recommendations in general do not hesitate to contact me.

In development features

  • Student records keeping
  • Discipline management
  • Attendance management
  • Internal communication
  • Student, Teacher, Staff Schedule

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See installing instructions for notes on how to deploy the project on a live system.


You will find hereafter what I use to develop and to run the project

  • Ubuntu Server 16.04 LTS
  • Apache Web Server
  • Python 3
  • Django 2
  • MySQL database
  • Virtualenv (not mandatory but highly recommended)


I use Virtualenv for developping this project so I recommend you to create an virtual environment virtualenv venv and to install the requirements pip install -r requirements.txt. Then, get a local copy of the project directory by cloning “StudX” from github.

Then follow these steps:

  1. create the database by typing in mysql command line create database Studx_database
  2. Provide the required information to the DATABASES dictionnary by editing /StudX/
  3. Create the tables with the django command line python makemigrations then python migrate
  4. Finally, run the django server python runserver <your-ip:port>

About the author

Kami Shah

I am a freelance writer and social media expert. With a passion for crafting compelling content and a deep understanding of online platforms, I create engaging articles, blogs, and posts that captivate audiences. My expertise in social media strategy, content planning, and audience engagement allows me to help businesses thrive in the digital landscape.

Leave a Comment