A Full Stack Web Application built with React (frontend) and Spring Boot (backend), integrated with MySQL database, providing a seamless experience for managing books, borrowing, reviews, and admin services.
- User Sign-up, Login, and Logout
- Social Signup , Login with Google OAuth
- Security applied using JWT, OAuth2, OIDC, and HTTPS/SSL/TLS
- Search & Browse: Search books with category filters and pagination
- Book Details: View availability, checkout copies if logged in
- Ratings & Reviews: Add star-based ratings and reviews (requires login)
- Shelf: View currently borrowed books
- History: Track borrowing history with issue and return dates
- Library Services: Q/A feature to interact with admin
- Add or delete books
- Answer user queries (Q/A)
- Frontend: React, JavaScript, TypeScript (npm, VS Code)
- Backend: Spring Boot, REST APIs, Maven (IntelliJ IDEA)
- Database: MySQL
- Authentication & Security: JWT, OAuth2, OIDC, Google OAuth, HTTPS/SSL/TLS
eLibrary-Management-System/
βββ backend/ # Spring Boot application
β βββ src/main/java # Controllers, Services etc.
β βββ src/main/resources
β βββ pom.xml
βββ frontend/ # React application
β βββ src/ # Components, Pages, Hooks
β βββ package.json
βββ README.md
- Integrate Stripe API for handling online payments
- Fines for late returns
- Premium membership
- Book purchases
- Add JUnit & Mockito test cases for backend services
- Add Postman/Newman API tests for validating REST endpoints
- Add React Testing Library / Jest for frontend component testing
- Notify users about upcoming due dates
- Notify users about overdue books
- Notify users about admin responses