Skip to content

Fullstack Digital Library Management System (Digilibz). Built with Java Spring Boot (Backend) and Next.js (Frontend). Comprehensive features include: Borrowing, Returns, Notifications, Book Reviews, and an Admin Statistics Dashboard.

License

Notifications You must be signed in to change notification settings

Digilibzz/Digital-Liblary-Digilibzx

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

98 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

πŸ“š Digilibzx - Digital Library Management System

Digilibz Banner Spring Boot Next.js MySQL Tailwind CSS

Digilibz is a comprehensive and modern full-stack digital library management solution, developed by integrating robust Java Spring Boot technology on the backend and responsive Next.js on the frontend to deliver a seamless and fast user experience. Specifically designed to transform library operations in academic or public environments into an efficient digital ecosystem, this system not only simplifies core circulation processes such as automated book borrowing and returning but also enriches user interaction through review features, real-time notifications, and AI-based summaries. It also equips administrators with an analytical statistics dashboard for inventory management and library activity monitoring that is transparent, structured, and measurable within a single unified platform.


Key Features

πŸ‘€ User

  • Smart Search: Search for books by title, category, or author.
  • Self-Service Circulation: Perform borrowing requests and view estimated return dates.
  • Transaction History: Monitor borrowing status (Pending, Borrowed, Returned, Overdue).
  • Review System: Provide reviews and ratings for read books.
  • Real-time Notifications: Receive updates on borrowing status.
  • AI Features: Automatic book summaries (AI Summarize).

πŸ›  Admin

  • Statistics Dashboard: Visualize borrowing data, popular books, and user activity.
  • Book Management: Add, edit, and delete book data (including cover uploads).
  • User Management: Manage user accounts (Admins, Lecturers, Students).
  • Borrowing Approval: Approve or reject book borrowing requests.
  • Return Management: Process book returns and handle late fines.


πŸ› οΈ Tech Stack

Backend

  • Framework: Java Spring Boot 3.x
  • Language: Java 17+
  • Database: MySQL
  • Security: Spring Security & JWT Authentication
  • Build Tool: Maven

Frontend

  • Framework: Next.js 14/15 (App Router)
  • Language: TypeScript
  • Styling: Tailwind CSS & Shadcn UI
  • State Management: React Hooks
  • Package Manager: pnpm / npm


πŸ“‚ Project Structure

root/
β”œβ”€β”€ backend/            # Backend Source Code (Spring Boot)
β”‚   β”œβ”€β”€ src/main/java   # Controllers, Services, Repositories, Models
β”‚   └── src/main/resources
β”‚       └── db/         # SQL Backup (backup.sql)
β”œβ”€β”€ frontend/           # Frontend Source Code (Next.js)
β”‚   β”œβ”€β”€ app/            # Pages & Routing
β”‚   β”œβ”€β”€ components/     # Reusable UI Components
β”‚   └── lib/            # API Helper Functions
└── document/           # Project Documentation (API Docs, ERD, SRS)



βš™οΈ Installation & Setup Guide

Follow these steps to run the project locally on your machine.

1. Database Preparation

  1. Ensure MySQL is running.
  2. Create a new database named digilibz_db (or adjust according to your configuration).
  3. Import the initial database file located at: backend/src/main/resources/db/backup.sql

2. Backend Configuration (Spring Boot)

  1. Open the backend folder in your IDE (IntelliJ IDEA / VS Code).
  2. Open the src/main/resources/application.properties (or .yml) file.
  3. Adjust your database configuration:
spring.datasource.url=jdbc:mysql://localhost:3306/digilibz_db
spring.datasource.username=root
spring.datasource.password=your_mysql_password

# JWT Configuration
jwt.secret=insert_your_long_secure_secret_key_here
jwt.expiration=86400000
  1. Run the application with the command:
mvn spring-boot:run

The Backend will run on port 8080.

3. Frontend Configuration (Next.js)

  1. Open a new terminal and navigate to the frontend folder.
cd frontend
  1. Install dependencies:
pnpm install
# or if using npm:
npm install
  1. Create a .env.local file inside the frontend folder and add:
NEXT_PUBLIC_API_URL=http://localhost:8080/api
  1. Run the frontend server:
pnpm dev
# or
npm run dev

The Frontend will run at http://localhost:3000.



πŸ“ API Documentation

Complete documentation regarding API endpoints can be found in the document/ folder:


πŸ“„ License

Distributed under the MIT License. See LICENSE for more information.

About

Fullstack Digital Library Management System (Digilibz). Built with Java Spring Boot (Backend) and Next.js (Frontend). Comprehensive features include: Borrowing, Returns, Notifications, Book Reviews, and an Admin Statistics Dashboard.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Contributors 8

Languages