Video Demo: https://youtu.be/S704_t_25yk
Edu-Board provides a space for users that are either teachers or students. This project is an attempt at creating an intuitive, simple yet functional academic platform for schools around the world. In Edu-Board, users can manage their academic information, grade-wise, to be on top of any update regarding their performance on the matter, from both sides of the equation.
Edu-Board can be hosted on your serve as a Flask Application. Within the project files you'll find everything you need to have your own instance of Edu-Board running in your local server. You can make use of, or even fork and modify the project yourself to suit your specific needs.
The main information regardin the app's configuration is provided within the app_config.py
file which contains the information specific to the app's instance. This is the file you'll have to modify according to the specfics of the server where you'd be hosting the app.
Edu-Board stores the users' information in a MySQL Database, the corresponding design and structure of the database is provided in the .schema
file, plus some SQL queries that were used throughout the creation and testing of the app. The queries provided will be of use if you decide to host your own instance of Edu-Board.
Being a Flask application, you must configure the following variables in order for your instance to run smoothly:
export FLASK_APP=app # (the name of the main file, in this case
app.py
)
export FLASK_ENV=development # (for changes and testing)
flask run # (within the directory where the project files are stored)
- Go to the Register tab and create a new user (password must be at least 8 characters long, including one uppercase, numbers and special characters)
- Log in with your newly created user
- On the Registration tab you'll be able to assign one or multiple subjects to your user.
- YOu can assign a subject by clicking the
'assign'
button in green. Unavailable subjects will appear in red. - On the Subjects tab you'll be able to see the details of each one of your subjects, including grading the students who registered for that subject.
- You'll have to select a subject, then click
'review subject'
. Then, you'll be able to review the activities assigned to the subject so far. - When you click
'activity details'
you'll be redirected to a page that'll show the current submission status per student of said activity. - Only students who have submitted the activity will be enabled to be graded.
Optional: If you click your name, you'll find information about your user.
- Go to the Register tab and create a new user (password must be at least 8 characters long, including one uppercase, numbers and special characters)
- Log in with your newly created user
- On the Registration tab you'll be able to assign one or multiple subjects to your user.
- You can assign a subject by clicking on the
'register'
button next to the teacher's name. - On the Subjects tab you'll be able to see the details of each one of your subjects, including submitting one or multiple of the activities scheduled for the subject, and review the grade for each activity.
- You'll have to select a subject, then click
'review subject'
- When you click
'subject details'
you'll be able to review each activity assigned to the subject - If you click
'submit'
, the activity will be marked as submitted and your teacher will be able to grade it.
Optional: If you click your name, you'll find information about your user.
There's a special role for admin users. You'll have to create the user directly on your database with the role 'admin'
. This user has access to every subject and activity registered in the database.
It's up to you if you want to create new endpoints or routes for this specific role where you can either review, or even modify, the information stored in the database directly from the platform's interface.
In the directory db_data
are stored text files that you can load in your database in case you want to test t