Library Book Management System (CLI)
A command-line application to manage a library's book catalog with features for adding books, searching by title/author, issuing books to students, and tracking due dates.
How to build it β step by step
- 1Data Structure: Books stored as JSON: {id, title, author, genre, available, issuedTo, dueDate}
- 2Core CRUD: Add book, search book (by title/author/genre), delete book
- 3Issue System: Issue book to student ID, calculate due date (14 days default), mark as unavailable
- 4Return & Fine: Return book, calculate overdue fine (βΉ2/day), update availability
Key features to implement
- βBook catalog with search and filter
- βStudent book issue/return tracking
- βOverdue fine calculation
- βTop borrowed books report
- βData persisted in JSON files
π‘ Unique twist to stand out
Implement a "Book Recommendation" feature: when a student returns a book, suggest similar books from the same author or genre that are currently available.
π What you'll learn
File I/O, data structure design, datetime handling, and building a complete CLI application in Python.