Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/derekgan08/university-course-registration-system

JavaFX desktop application for university student and lecturer course registration
https://github.com/derekgan08/university-course-registration-system

course-registration-system desktop-app java java-fx lecturer-management pdf-generation student-management

Last synced: 25 days ago
JSON representation

JavaFX desktop application for university student and lecturer course registration

Awesome Lists containing this project

README

        

# CAT201 Project: University Course Registration System

## Problem Statements
In many universities, the course registration process is often manual, tedious, and inefficient, both for students and lecturers. This system aims to streamline the process, providing a more efficient and user-friendly interface for both students and lecturers to interact with. By creating a digital platform, it solves the problem of mismanagement and delays during course registrations, thereby improving the overall academic experience.

## Project Overview
The University Course Registration System is a Java-based desktop application designed to facilitate the course registration process for both students and lecturers. The application includes features for signing up and logging in, managing personal details, and registering courses for students. Lecturers can manage their courses, view enrolled students, and generate downloadable PDF reports with student and course details.

The system has a user-friendly interface built using JavaFX, ensuring an easy interact.

## Key Features
- **Student Sign-Up & Login**: Secure student account creation with matric number and password validation.
- **Student Dashboard**: Display of personal information, GPA, and registered courses.
- **Course Registration**: Students can search, add, and remove courses from their registration list.
- **PDF Generation**: Ability to generate and download a PDF with a student's registered courses.
- **Lecturer Login**: Similar functionality as students, but with additional features for course management.
- **Lecturer Dashboard**: Includes course details, student lists, and the ability to download course and student details in PDF format.
- **Validation**: Input validation for matric numbers, passwords, and NRICs to ensure data integrity.
- **Downloadable Reports**: Both students and lecturers can download a PDF file containing relevant information.

## Technologies Used
- **Java**: Core programming language used to build the application.
- **JavaFX**: Framework for building the graphical user interface.
- **Apache PDFBox**: Library used to generate PDF files.
- **Git**: Version control to track changes and manage collaboration.
- **JUnit**: For unit testing key components of the system.

## Installation
This project is not open for public cloning or redistribution without prior written permission from the author as stated in ![LICENSE.md](LICENSE.md). If you would like to access this project, please reach out to the repository owner to request permission.

Once written permission is granted, you will receive detailed instructions on how to install and run the system, including all necessary steps and dependencies.

## Usage
Similar to the installation process, usage instructions will be provided only after written permission is granted to access this repository. Upon receiving access, you will be provided with step-by-step instructions on how to use this system/application, including on how to run the program, interact with it and exploring all the key features stated.

## Screenshots


welcome screen


Figure 1: Welcome Screen


login screen


Figure 2: Login Screen


sign up screen


Figure 3: Sign Up Screen


contact us screen


Figure 4: Contact Us Screen


lecturer dashboard


Figure 5: Lecturer Dashboard


course details screen


Figure 6: Course Details Screen


export student list to PDF


Figure 7: Export Student List to PDF


log out screen


Figure 8: Log Out Screen


log in as student


Figure 9: Log In as Student


student dashboard


Figure 10: Student Dashboard


student course registration screen


Figure 11: Student Course Registration Screen