Skip to content

Belak17/LibraryManagement

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Library Minimal Management System

Java JavaFX Oracle JDBC MVC

A modern desktop application built with JavaFX for managing library operations including books, members, borrowing, and administrative tasks.


Table of Contents


About

Library Minimal Management System is a desktop application designed to simplify the management of a library.
The application provides a clean JavaFX interface that allows administrators and users to interact with the system efficiently.

The system supports:

  • Book management
  • User/member management
  • Borrowing and returning operations
  • Book search functionality
  • Administrator dashboard
  • Librarian management

This project was developed following the MVC architecture pattern to ensure maintainability and scalability.


Features

Book Management

  • Add new books
  • Update book information
  • Delete books
  • View detailed book information
  • Manage library inventory

User & Librarian Management

  • Add users/members
  • Manage librarians
  • Authentication system
  • User and admin dashboards

Borrowing System

  • Borrow books
  • Return books
  • Track borrowed books
  • Manage availability status

Search System

  • Search books by title or information
  • Quick inventory lookup

User Interface

  • Modern JavaFX GUI
  • Simple and intuitive navigation
  • Responsive desktop interface

Technologies Used

Backend & Logic

  • Java
  • JDBC
  • Oracle Database

Frontend

  • JavaFX

Architecture

  • MVC Pattern

Development Tools

  • IntelliJ IDEA / Eclipse
  • Git & GitHub
  • Maven

Architecture

The project follows the MVC (Model-View-Controller) architecture.

┌─────────────┐
│    View     │  → JavaFX User Interface
└─────┬───────┘
      │
      ▼
┌─────────────┐
│ Controller  │  → Handles user interactions
└─────┬───────┘
      │
      ▼
┌─────────────┐
│    Model    │  → Business logic & database operations
└─────────────┘

Main Components

  • View Layer → JavaFX interfaces
  • Controller Layer → User actions handling
  • Model Layer → Business logic and JDBC database communication

Class Diagram

Draw.io Diagram

Class Diagram

Project Presentation

Presentation Document

📄 View Presentation PDF


Screenshots

Login Page

Login Page

Admin Dashboard

Dashboard Admin

User Dashboard

Dashboard User

Library Inventory

Library Inventory

Modify Book

Modify Book

Book Details

Book Details

Borrow Book

Borrow Book

Return Book

Return Book

Installation

Prerequisites

Make sure you have installed:

  • Java JDK 17+
  • JavaFX SDK
  • Oracle Database
  • Maven
  • Git
  • IntelliJ IDEA or Eclipse

Clone the Repository

git clone https://github.com/Belak17/LibraryManagement.git
cd LibraryManagement

Configure the Database

Update your database configuration inside the project files.

Example:

DB_URL=jdbc:oracle:thin:@localhost:1521:xe
DB_USERNAME=your_username
DB_PASSWORD=your_password

Build the Project

mvn clean install

Run the Application

mvn javafx:run

Usage

  1. Launch the application
  2. Login as admin or user
  3. Manage books and members
  4. Borrow or return books
  5. Search books in the inventory

Project Structure

LibraryManagement/
│
├── src/
│   ├── model/
│   ├── view/
│   ├── controller/
│   ├── dao/
│   └── utils/
│
├── resources/
├── database/
├── pom.xml
└── README.md

Future Improvements

  • Email notifications
  • Fine management system
  • Statistics dashboard
  • Book reservation system
  • Export reports to PDF
  • Multi-language support
  • Dark mode UI

Contributing

Contributions are welcome!

Steps

  1. Fork the repository
  2. Create a feature branch
git checkout -b feature-name
  1. Commit your changes
git commit -m "Add new feature"
  1. Push to GitHub
git push origin feature-name
  1. Open a Pull Request

Report Issues

If you find a bug or want to suggest improvements, please open an issue in the repository.


Author

Kaleb AKAKPO

  • Backend Developer
  • Java & Spring Boot Enthusiast

LinkedIn

LinkedIn Profile


If you like this project, consider giving it a star on GitHub!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages