A school management system is a well-equipped and centralized platform that allows teachers, students, and other staff members to interact seamlessly and perform the school functions properly. Similarly, it helps you automate academic operations and balance workload.
please note this is the repo for the back the repo for the front is
table of content :
our System is made for :
- managers and adminsterators of the school
- the teachers
- parents and students
they can :
- Direct Managers
- Manage Teachers
- Manage Students
- Timetable and Room Allocation
- Class and Schedule Management
- Subject and Curriculum Planning
- Student Attendence
- Tracker Prise Market Managment
- Student Points and Behavior Tracker
- Transportation Management
- Add Homework and Assigment
- Check their Schedule
- Assign Grades
- Communicate With Student
- Assing or Provoke Points To Student
- Submit Homework and Assigment
- Checiks Their Points
- Communicate With Teacher
- Check their Schedule and Timetable
- Purchace Prises
- Check their Attendene
- Subscribe To A Bus
- Check their Grades
and here is a use case diagram :
and here is the erd of the project:
here is a over view of the front
you can find the full repo at :
you can find the full repo at :
this section contain how to install and run the app :
- first you need node js and npm to be installed in your device "you can check them by running
npm -v
&&node -v
" - then you will need to have mysql in your machine " you can check that by running
mysql --version
"
- open your terminal and make sure that you are in the root diroctry and type
npm i
then hitEnter
- after that type
npm install -g sequelize-cli
then hitEnter
- after that go to your
.env.sample
and rename it to.env
- in your
.env
file change yourDB_USER
to your mysql user name and yourDB_PASS
to your mysql password and add theDB_NAME_DEVELOPMENT
to whatever you want and make sure the database exists in your mysql
- open your terminal and make sure that you are in the root diroctry and type
npm start
then hitEnter
- the app will be running on localhost on port
4000
at the urlhttp://localhost:4000/
- then you can go to postman and see the requests (you can find the file inside the extra)
- to see the app route go to
http://localhost:4000/api
- in your
.env
file make sure to setDB_NAME_TEST
to whatever you want and make sure the database exists in your mysql - open your terminal and make sure that you are in the root diroctry and type
npm run test:watch
then hitEnter
- then inside the reports folder open the test
backend :
-
khaled Al Hamwie github linked in email address
-
Mohamed attal github linked in email address
front in :
-
Diaa alterh
-
Gaith obari
-
Ammar Huessin