A simple Library Management System implemented in C++.
This system supports basic user and librarian functionalities such as:
- Registering and logging in users
- Viewing available books
- Borrowing and returning books
- Librarian features: adding/removing books, managing users
- Object-Oriented Design (OOP)
- File-based storage (no database needed)
- Role-based access (User / Librarian)
- Command-Line Interface (CLI)
git clone https://github.com/Hasan85-bin/LibrarySystem.git
cd LibrarySystemYou can compile using g++:
g++ ".\main.cpp" ".\Core Classes\LoanManager.cpp" ".\Core Classes\Book.cpp" ".\Core Classes\User.cpp" ".\Utils\ini\iniReader\INIReader.cpp" ".\Utils\ini\ConfigManager.cpp" ".\Utils\ini\GlobalConfiguration.cpp" ".\Utils\ini\ini.c" ".\Utils\csv\CSVStorageManager.cpp" -o LibraryManager.exeOr compile using any C++ IDE like Code::Blocks or Visual Studio.
./LibraryManagerYou can create new users at runtime. However, there is a default librarian account for demo purposes:
- Username:
admin - Password:
admin123
LibrarySystem/
├── Book.h / Book.cpp
├── User.h / User.cpp
├── Librarian.h / Librarian.cpp
├── LibraryManager.h / LibraryManager.cpp
├── main.cpp
└── ...
- All data (books, users, etc.) is stored in local text files.
- Make sure the application has permission to read/write in its directory.
- Tested on Linux; should work on Windows/Mac with minor adjustments.