Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“š Library Management System

C++ Qt CMake Platform License

A modern desktop Library Management System built with C++ and Qt Widgets, featuring authentication, book management, issue/return operations, persistent storage, and an intuitive graphical interface.


✨ Features

πŸ” Authentication

  • User Login
  • User Signup
  • Secure credential validation
  • Persistent user storage (users.txt)

πŸ“š Book Management

  • βž• Add Books
  • ❌ Remove Books
  • πŸ” Search Books
  • πŸ“‹ Display All Books

πŸ“– Library Operations

  • Issue Books
  • Return Books
  • Automatic Fine Calculation
  • Book Availability Tracking

πŸ’Ύ File Handling

  • Save books to file
  • Load books automatically on startup
  • Persistent storage using text files
  • User data persistence

πŸ–₯️ Modern GUI

  • Built with Qt Widgets
  • Responsive interface
  • Dashboard layout
  • Styled buttons
  • Interactive table view
  • Tooltips
  • User-friendly navigation

βš™οΈ Programming Concepts Used

  • Object-Oriented Programming (OOP)
  • Classes & Objects
  • Constructors
  • Encapsulation
  • Exception Handling
  • File Handling
  • STL (Vector)
  • Searching Algorithms
  • Sorting Algorithms
  • Event-Driven Programming

πŸ“Έ Screenshots

πŸ”‘ Login Screen

image
screenshots/login.png

πŸ“ Signup Screen

image
screenshots/signup.png

πŸ“š Dashboard

image
screenshots/dashboard.png

πŸ“– Library Table

image
screenshots/library.png

πŸ“ Admin's View

image
screenshots/adminview.png

πŸ› οΈ Tech Stack

Technology Usage
C++ Core Programming
Qt 6 GUI Framework
Qt Widgets User Interface
CMake Build System
STL Data Structures
File Handling Persistent Storage

πŸ“‚ Project Structure

LibraryManagementGUI
β”‚
β”œβ”€β”€ Book.cpp
β”œβ”€β”€ Book.h
β”‚
β”œβ”€β”€ Library.cpp
β”œβ”€β”€ Library.h
β”‚
β”œβ”€β”€ MainWindow.cpp
β”œβ”€β”€ MainWindow.h
β”œβ”€β”€ MainWindow.ui
β”‚
β”œβ”€β”€ Login.cpp
β”œβ”€β”€ Login.h
β”œβ”€β”€ Login.ui
β”‚
β”œβ”€β”€ Signup.cpp
β”œβ”€β”€ Signup.h
β”œβ”€β”€ Signup.ui
β”‚
β”œβ”€β”€ UserManager.cpp
β”œβ”€β”€ UserManager.h
β”‚
β”œβ”€β”€ books.txt
β”œβ”€β”€ users.txt
β”‚
└── CMakeLists.txt


πŸš€ Getting Started

Prerequisites

  • Qt Creator
  • Qt 6.x
  • MinGW Compiler
  • CMake

Installation

Clone the repository

git clone https://github.com/mannat69/Library-Management-System.git

Open in Qt Creator

  • Open Qt Creator
  • Select Open Project
  • Choose CMakeLists.txt
  • Configure the project
  • Build
  • Run

πŸ’» How to Use

  1. Create a new account using Signup
  2. Login using your credentials
  3. Add books to the library
  4. Search books
  5. Issue books
  6. Return books
  7. Save your changes
  8. Restart the application to verify data persistence

πŸ“„ Data Storage

The application stores data locally using text files.

books.txt

Stores all book records.

users.txt

Stores registered user accounts.


πŸ“ˆ Future Improvements

  • πŸŒ™ Dark / Light Theme
  • πŸ”ƒ Sort Books
  • πŸ“· Book Cover Images
  • πŸ“‚ Categories
  • πŸ“€ Export to CSV
  • πŸ“„ PDF Reports
  • πŸ”” Due Date Notifications
  • πŸ—„οΈ SQLite Database Integration
  • πŸ“± QR / Barcode Support

🎯 Learning Outcomes

This project demonstrates practical implementation of:

  • GUI Development with Qt
  • Object-Oriented Programming
  • File Handling
  • Exception Handling
  • Event-Driven Programming
  • Data Structures
  • Searching & Sorting
  • Desktop Application Development

🀝 Contributing

Contributions, suggestions, and improvements are always welcome.

Feel free to fork the repository and submit a pull request.


πŸ‘¨β€πŸ’» Author

Mannat Choudhry

πŸŽ“ B.Tech Computer Science Engineering

GitHub: https://github.com/mannat69


⭐ Support

If you found this project useful, consider giving it a ⭐ Star on GitHub!

It helps others discover the project and motivates future improvements.


Made with ❀️ using C++ and Qt

About

πŸ“š Modern Library Management System built with C++ & Qt | Login/Signup | Book Management | Issue & Return | Fine Calculation | File Handling | OOP | Modern GUI

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages