A backend web application built with Spring Boot and PostgreSQL to streamline and manage the process of student course registration. This system allows students to browse, enroll, and manage their courses, while providing administrative tools for course and user management. Authentication is secured using JWT.
-
Student Registration & Authentication
- Secure user sign-up and login with JWT authentication
- Profile management
-
Course Management
- View available courses (API)
- Register and deregister for courses (API)
- View registered courses and schedules (API)
-
Admin Panel (API)
- Add, update, or delete courses
- Manage student and faculty accounts
- Monitor registration statistics
-
Faculty Features
- View enrolled students
- Backend: Java, Spring Boot
- Database: PostgreSQL
- Authentication: JWT (JSON Web Token)
- Frontend: None (API only)
-
Clone the repository
git clone https://github.com/jenilsoni04/Studentcourseregistrationsystem.git cd Studentcourseregistrationsystem -
Configure the database
- Create a PostgreSQL database (e.g.,
studentcourseregistration). - Update your
src/main/resources/application.propertieswith your PostgreSQL credentials:spring.datasource.url=jdbc:postgresql://localhost:5432/studentcourseregistration spring.datasource.username=YOUR_DB_USERNAME spring.datasource.password=YOUR_DB_PASSWORD spring.jpa.hibernate.ddl-auto=update
- Create a PostgreSQL database (e.g.,
-
Build and run the application
mvn clean install mvn spring-boot:run
-
API Usage
- The backend exposes RESTful APIs for all operations (student, admin, faculty).
- Use tools like Postman or
curlto interact with the endpoints. - JWT tokens are required for protected endpoints (see authentication APIs for details).
Studentcourseregistrationsystem/
├── src/
│ ├── main/
│ │ ├── java/
│ │ └── resources/
│ └── test/
├── pom.xml
├── README.md
└── ...
Contributions are welcome! Please fork the repository, make your changes, and submit a pull request. For major changes, please open an issue first to discuss what you would like to change.
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or support, please open an issue in the repository.