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.
📢 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.
- Student records keeping
- Discipline management
- Attendance management
- Internal communication
- Student, Teacher, Staff Schedule
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:
- create the database by typing in mysql command line
create database Studx_database
- Provide the required information to the
DATABASES
dictionnary by editing/StudX/settings.py
- Create the tables with the django command line
python manage.py makemigrations
thenpython manage.py migrate
- Finally, run the django server
python manage.py runserver <your-ip:port>
Contributions will be warmly welcomed. A wiki is in progress to describe the design.
I use exclusively Github
- Debruycker Vincent
This is an open source project not under any particular license. However framework, packages and librairies used are on their own licenses. Be aware of this if you intend to use part of this project for your own project.