BookLib Library Management System is a comprehensive JavaFX application developed for library in Sri Lanka. The system modernizes the traditional manual library operations, offering an efficient digital solution for book management, user registration, borrowing processes, and fine calculations.
- Book Management: Add, update, delete, and search books by various parameters
 - User Management: Register and manage library patrons with detailed profiles
 - Borrowing System: Track book checkouts, returns, and borrowing history
 - Fine Management: Automatic calculation of overdue fines with payment tracking
 - Reporting: Generate comprehensive reports on book availability, loans, and fines
 
🔐 Begin Your Journey
  
  
  The gateway to efficient library management starts here
  
  
  Your comprehensive overview of library operations and key metrics
  
  
  Building relationships with readers through detailed member profiles
  
  
  Curate and manage your growing treasury of knowledge
  
  
  Secure patron verification ensures proper book circulation
  
  
  Seamless book checkout and return processing
  
  
  Transparent fine tracking and payment processing
  
  
  Comprehensive circulation metrics at your fingertips
  
  
  Deep dive into borrowing patterns and trends
  
  
  Strategic decision-making through powerful data visualization
  
  
  Secure system access with role-based administrator registration
- Frontend: JavaFX with JFoenix for modern UI components
 - Backend: Java
 - Standalone: JavaFX
 - Database: MySQL with direct JDBC connection
 - Build Tool: Maven
 - Reports: Custom report generation
 
- Java 11 or higher
 - MySQL 8.0 or higher
 - Maven 3.8+
 
- 
Clone the repository
https://github.com/Nugi29/Library_Management_Sys_FX.git cd Booklib_LMS - 
Configure the database
- Create a MySQL database named 
Booklib - Update the database connection details in 
Booklib_LMS/src/main/java/DB/DBConnection.java 
 - Create a MySQL database named 
 - 
Build the project
mvn clean install
 - 
Run the application
mvn javafx:run
 
Based on the screenshots provided, the project follows an MVC architecture:
booklib-lms/
├── src/
│   ├── main/
│   │   ├── java/
│   │   │   ├── controller/
│   │   │   │   ├── author/
│   │   │   │   ├── book/
│   │   │   │   ├── bookborrow/
│   │   │   │   ├── category/
│   │   │   │   ├── fine/
│   │   │   │   ├── member/
│   │   │   │   ├── publisher/
│   │   │   │   ├── report/
│   │   │   │   ├── DashboardController
│   │   │   │   ├── LoginFormController
│   │   │   │   └── RegisterFormController
│   │   │   ├── DB/
│   │   │   │   └── DBConnection
│   │   │   ├── model/
│   │   │   │   ├── reportModels/
│   │   │   │   ├── Admin
│   │   │   │   ├── Author
│   │   │   │   ├── Book
│   │   │   │   ├── BookBorrow
│   │   │   │   ├── Category
│   │   │   │   ├── Fine
│   │   │   │   ├── Member
│   │   │   │   └── Publisher
│   │   │   ├── WeatherService
│   │   │   ├── Main
│   │   │   └── Starter
│   │   └── resources/
│   │       ├── css/
│   │       ├── img/
│   │       └── view/
│   │           ├── authorform.fxml
│   │           ├── bookborrowform.fxml
│   │           ├── bookborrowloginform.fxml
│   │           ├── bookform.fxml
│   │           ├── categoryform.fxml
│   │           ├── dashboard.fxml
│   │           ├── fineform.fxml
│   │           ├── loginForm.fxml
│   │           ├── memberform.fxml
│   │           ├── publisherform.fxml
│   │           ├── RegNewAdmin.fxml
│   │           ├── reportform.fxml
│   │           └── userform.fxml
│   └── test/
└── pom.xml
- Navigate to the Book section to add, update, or delete books
 - Use the search functionality to find books by title, author, or genre
 
- Register new users with their details
 - Manage existing user information and membership status
 
- Process book borrowing and returns
 - Set borrowing limits (3 books per user)
 - Track return dates and automatically calculate overdue fines
 
- View outstanding fines for users
 - Process fine payments and update balances
 
- Generate reports for available books, borrowed books, and overdue books with fines
 
- Real-time weather data displayed on the dashboard including temperature, location, wind, and humidity
 
This project was developed as part of the JavaFX project. It implements:
- CRUD operations for all entities (Books, Authors, Categories, Publishers, Members)
 - Data validation and error handling
 - Modern UI design with responsive layout
 - Direct database interaction through JDBC
 - Weather API integration for live weather data
 
- Email notifications for due dates and overdue books
 - Online reservation system
 - Integration with digital book repositories
 - Mobile application for users
 - QR code scanning for faster book checkout
 
Developed by @Nugi29
