The Smart Queue Management System is a Spring Boot application designed to manage queues efficiently in real-time.
It allows users to generate tokens, get their estimated waiting time, and receive notifications when their turn is near.
Admins can monitor the queue, manage service counters, and optimize the flow of customers.
- ✅ User can generate a queue token (online or at kiosk).
- ✅ Real-time queue updates and estimated waiting time.
- ✅ Admin dashboard for managing counters and queues.
- ✅ Notifications when the user’s turn is about to come.
- ✅ Role-based authentication with JWT & Spring Security.
- ✅ REST API support for integration with frontend or mobile app.
- Backend: Spring Boot (REST APIs)
- Security: Spring Security + JWT
- Database: MySQL
- Build Tool: Maven
- Other: JPA/Hibernate, Lombok
POST /api/auth/register→ Register new userPOST /api/auth/login→ Login & get JWT tokenPOST /api/queue/token→ Generate queue tokenGET /api/queue/status/{tokenId}→ Check token status
GET /api/admin/queue→ Get all queuesPUT /api/admin/queue/next→ Call next tokenPOST /api/admin/counter→ Add new service counter
flowchart TD
A[User Arrives] --> B[Generate Token via API/Kiosk]
B --> C[Token Stored in DB]
C --> D[User Gets Estimated Waiting Time]
D --> E[Admin Dashboard Monitors Queue]
E --> F[Admin Calls Next Token]
F --> G[User Notified: It's Your Turn!]
G --> H[User Served and Token Closed]