A professional CLI-based library system built using Test-Driven Development (TDD) and Layered Architecture.
- Books: Add, search (by title/author), and track availability.
- Users: Secure registration with
bcryptpassword hashing. - Loans: Borrow and return books with full referential integrity.
- Librarian Tools: Inventory status and user management.
- Language: Python 3.14+
- Database: SQLite3 (with Foreign Keys & Joins)
- Security: Bcrypt for password encryption
- Testing: Python
unittestframework
- Python 3.14+
pip
- Clone the repository.
- Create and activate a virtual environment:
python -m venv .venv source .venv/bin/activate - Install dependencies:
pip install -r requirements.txt
- Running the App
python src/lms/main.py
- Running Tests
export PYTHONPATH=$PYTHONPATH:$(pwd)/src python -m unittest discover tests