Advanced University Library Management System (Full-Stack Spring Boot & React)

تفاصيل العمل

Library Management System is a robust, highly secure, and scalable Full-Stack web application designed for comprehensive university library management. Engineered using industry best practices (Layered Architecture, RESTful principles), this system delivers high performance and a seamless user experience.

The platform solves complex concurrency issues, such as race conditions during book borrowing, and integrates real-time WebSocket communication to keep administrators and users instantly updated.

Core Features & Capabilities:

Advanced Role-Based Access Control (RBAC): Fine-grained permission management supporting multiple user tiers (Admin, Manager, User), heavily secured by stateless JWT authentication (Access & Refresh tokens).

Real-Time Notifications: Seamless integration of WebSockets (STOMP + SockJS) to instantly notify administrators of new book loans and returns without page reloads.

Optimistic Locking (Concurrency Control): Prevents stock depletion conflicts and race conditions using JPA's @Version annotation, ensuring accurate inventory even during simultaneous borrowing attempts.

Analytical Dashboard: Real-time data visualization featuring interactive charts (powered by Recharts) to analyze borrowing trends, stock availability, and category distributions.

Dynamic Data Export: Automated generation of professional reports in both PDF (via iText 7) and Excel (via Apache POI) formats.

Multilingual Interface: Native support for both English and French, implemented dynamically using react-i18next.

Technical Architecture & Full Tech Stack:

Frontend Ecosystem: React 18, TypeScript, Vite, TanStack Router (for client-side routing), TanStack React Query (for server state management/caching), Tailwind CSS, Material UI (MUI), Recharts (for complex data visualization), and react-i18next.

Backend Core: Java 17, Spring Boot 3.2, Spring Web (REST API), Jakarta Validation, Lombok, and Maven.

Security & Real-Time: Spring Security, JJWT (JSON Web Tokens), and Spring WebSocket with STOMP/SockJS protocols.

Data Access & Mapping: Spring Data JPA, Hibernate, MapStruct (for Entity-DTO mapping), MySQL 8.0 (Production), and H2 Database (Testing).

Reporting & Export: iText 7 (PDF) and Apache POI (Excel .xlsx).

DevOps, Tooling & CI/CD: Docker, Docker Compose, phpMyAdmin, and GitHub Actions.

API Documentation: SpringDoc OpenAPI (Swagger 3).

🔗 Live Links & References:

Source Code (GitHub):https://github.com/ABDELA...

Portfolio / Case Study:https://elkholtyabde.verc...