A Java-based student grading system with role-based authentication and MySQL integration. Users can manage students, courses, and grades through a modern JavaFX GUI with role-specific dashboards.
-
Role-Based Authentication:
- Secure login for Admin, Teacher, and Student users.
- Each role has access to specific features based on permissions.
-
Student Management (Admin Only):
- Add new students by entering their name, ID, and class.
- Update student details (name, ID, class).
- Remove students from the system.
- Assign courses and grades to students.
- View all students and their enrolled courses with grades.
-
Teacher Management (Admin Only):
- Add and remove teachers.
- Assign courses to teachers.
- Manage teacher accounts.
-
Course Management:
- Add and remove courses. (Αdmin Only)
- Assign students to courses (Admin only).
- Assign and edit grades for students in their courses. (Admin & Teacher)
- Remove students from their courses. (Admin, Teacher & Student)
-
Student Features (Student Only):
- View personal courses and grades.
- Drop courses.
-
User Interface:
- Simple and intuitive GUI built using JavaFX.
- Role-based windows:
- Admin Dashboard
- Teacher Dashboard
- Student Dashboard
- Tabs for managing students, courses, and teachers.
- Alerts for successful or failed actions (e.g., adding students, assigning courses/grades).
- View enrolled courses and assigned grades.
- Check personal academic progress.
- Assign and update student grades.
- Remove students from their courses.
- View assigned courses and enrolled students.
- Add, edit, and remove students and teachers.
- Manage courses and assign them to teachers and students.
- Full control over courses, users, and grades.
Admin Dashboard Preview (Buggy Tab Header Styling - Upcoming Fix)
- Java Version: 21 or higher
- JavaFX: Required for the graphical user interface (GUI)
- IDE: Any Java IDE (e.g., IntelliJ IDEA, Eclipse, or VS Code)
To run the project locally:
-
Clone the repository:
git clone https://github.com/yourusername/student-grading-system.git
-
Navigate to the project directory:
cd student-grading-system
-
Open the project in your preferred IDE.
-
Ensure you have JavaFX configured:
- For IDE setup, ensure that JavaFX libraries are properly linked to your project.
-
Run the
StudentGradingSystemUI
class to start the application.
Feel free to fork the repository, submit issues, and create pull requests for improvements or bug fixes. Contributions are welcome!