A Command-Line Interface (CLI) for managing library operations including books, copies, members, loans, and reservations. Built with Python, SQLAlchemy, and Marshmallow.
- Add, update, and list books and copies
- Manage library members
- Track loans and returns
- Handle reservations
- Validation of input data
- CLI prompts for user interaction using Typer
git clone https://github.com/LizianaTheS/LibraryManagerCli.git
cd LibraryManagerCli
python -m venv .venv
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
pip install -r requirements.txtStart the CLI and follow prompts:
python main.py# Create a new member
python main.py create-member
# Add a new book
python main.py add-book
# Borrow a copy
python main.py borrow-copy
# Reserve a copy
python main.py reserve-copyDatabase connection: Configure your SQLAlchemy database URL in the config.py or environment variables.
Migrations: Alembic is used for database migrations.
alembic upgrade head-
Fork the repository
-
Create a feature branch
-
Commit your changes
-
Submit a pull request