EduGrade Pro is a PyQt5-based desktop application designed for educators to manage student grades. It provides a graphical interface to configure module components, manually input student data, or load it from files. The app processes grades based on specified weightings and displays results in a clean, tabular format.
- Clean and intuitive PyQt5 interface
- Two modes:
- Default Mode: Uses a fixed grading structure (Coursework 1, 2, 3, Final Exam)
- Configuration Mode: Allows custom module name and weighted components
- Manual input or file-based student data entry
- Output includes raw scores, rounded scores, and categories
- Saved results can be viewed inside the app
-
Clone the repository:
git clone https://github.com/msayyid/student-grading-app.git cd student-grading-app -
Create and activate a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # on macOS/Linux venv\Scripts\activate # on Windows
-
Install dependencies:
pip install -r requirements.txt
Run the main application script:
python app.pystudent_grading_app/
├── app.py # Main application entry point
├── main1.py # Logic functions for score calculations
├── validators.py # Input validation helpers
├── demo.html # Sample demo page shown in demo mode
├── how_to_run.txt # Quick reference for running the app
├── path_to_logo.png # App logo (displayed in About dialog)
├── data/
│ ├── sample_default_input.txt
│ └── sample_default_input_l_table.txt
└── requirements.txt
To try out the app without entering your own data:
-
Open the app and choose Default Mode
-
Click "Load", then choose the sample file:
data/sample_default_input.txt
This input file will be processed and the result saved as:
data/sample_default_input_l_table.txt
You can view the output using the "View" button after processing.
Developed by Mukhammadsaiid Norbaev
Email: norbaevmukhammadsaiid@gmail.com
Roehampton University London License
For academic use only.