The Spring Gradebook Application is a web-based system designed to manage student grades, courses, professors, and other educational information. It's built using the Spring Framework and Hibernate for data persistence. The view was made using Thymeleaf.
- Manage Professors: Add, view, update, and delete professor details including their name, email, and contact information.
- Manage Students: Add, view, update, and delete student details such as name, email, and contact information.
- Manage Courses: Create, view, update, and delete course information including course name, description, and credit hours.
- Manage Assignments: Define assignments with details such as name, type, and points possible.
- Record Grades: Record student grades for assignments, along with the corresponding division, professor, and course.
- Manage Divisions: Organize courses into divisions with specific time slots, professors, and rooms.
- Manage Rooms: Add, view, update, and delete room details within different buildings.
- Manage Semesters: Define academic semesters with start and end dates.
- Manage Enrollments: Enroll students in divisions and track their progress.
- Java 17
- Spring Framework (Spring Boot, Spring MVC, Spring Data JPA)
- Hibernate ORM - Thymeleaf (for server-side templating)
- HTML/CSS - Project Lombok (for reducing boilerplate code)
- H2 Database (for development)
- Maven (for project management)
- Clone the repository:
git clone https://github.com/GageAllenCarpenter/Spring-Gradebook.git
- Navigate to the project directory:
cd spring-gradebook
- Build the project using Maven:
mvn clean install
- Run the application using Maven:
mvn spring-boot:run
- Access the application in your web browser:
[http://localhost:8080](http://localhost:8080/)
- Database Configuration: The application uses H2 database for development. Update the
application.properties
file to configure your database settings. - Port Configuration: By default, the application runs on port 8080. You can change this in the
application.properties
file.
Contributions are welcome! If you'd like to contribute to the project, please follow these steps:
- Fork the repository.
- Create a new branch for your feature/fix:
git checkout -b feature-name
- Make your changes and commit them:
git commit -m "Add your message here"
- Push your changes to your fork:
git push origin feature-name
- Create a pull request to the main repository.
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or support, please contact GageAllenCarpenter@gmail.com.