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.