Skip to content

tothantonio/backend-exam-scheduler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“… Exam Scheduler

Exam Scheduler is a full-stack web application built with Spring Boot (Java) for the backend and React for the frontend.
The app allows users to register, log in, and manage their exams in a personalized dashboard, with secure authentication using JWT.


  • User Registration & Login with JWT authentication
  • Password encryption using BCrypt
  • Personalized Dashboard – each user sees only their own exams
  • CRUD Operations for Exams (Create, Read, Update, Delete)
  • Validation with DTOs to ensure data integrity
  • Error Handling using @ControllerAdvice
  • Responsive Frontend built with React + Axios + React Router
  • User Counter – displays the total number of users in the app
  • Protected Routes – only authenticated users can access the dashboard

Backend:

  • Java 24
  • Spring Boot 3 (Web, Security, Data JPA)
  • JWT Authentication
  • PostgreSQL Database
  • Maven

Frontend:

  • React (Vite)
  • Axios
  • React Router DOM
  • CSS Modules

backend/
β”œβ”€β”€ src/main/java/com/exam_scheduler/Exam_Scheduler
β”‚    β”œβ”€β”€ dto/
β”‚    β”œβ”€β”€ exception/
β”‚    β”œβ”€β”€ controller/        # REST controllers
β”‚    β”œβ”€β”€ model/             # Entities (User, Exam)
β”‚    β”œβ”€β”€ repository/        # JPA repositories
β”‚    β”œβ”€β”€ service/           # Business logic
β”‚    β”œβ”€β”€ security/          # JWT config & filters
β”‚    └── ExamSchedulerApplication.java
└── src/main/resources/
└── application.properties

frontend/
β”œβ”€β”€ src/
β”‚    β”œβ”€β”€ pages/             # Page-level components
β”‚    β”œβ”€β”€ styling/
β”‚    β”œβ”€β”€ App.jsx
β”‚    └── main.jsx
└── public/

1

2

About

Backend for Exam-Scheduler app

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages