https://github.com/tothantonio/backend-exam-scheduler
Backend for Exam-Scheduler app
https://github.com/tothantonio/backend-exam-scheduler
Last synced: about 1 month ago
JSON representation
Backend for Exam-Scheduler app
- Host: GitHub
- URL: https://github.com/tothantonio/backend-exam-scheduler
- Owner: tothantonio
- Created: 2025-08-13T11:36:24.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2025-08-24T19:10:03.000Z (about 1 month ago)
- Last Synced: 2025-08-24T23:21:11.936Z (about 1 month ago)
- Language: Java
- Homepage: https://frontend-exam-scheduler.vercel.app/
- Size: 25.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 📅 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.propertiesfrontend/
├── src/
│ ├── pages/ # Page-level components
│ ├── styling/
│ ├── App.jsx
│ └── main.jsx
└── public/````

