Skip to content

SenseiSuraj24/BiblioTrack--Library-Management-System-Using-Tkinter-in-Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Description: Library Management System This Python-based Library Management System (LMS) is designed to streamline the management of books, students, and transactions. It features a user-friendly graphical interface powered by Tkinter, handles data using CSV files, and incorporates time management functionalities with the datetime module.

Key Features: Book Management: Add, view, and manage books in the library. Search for books by ID, title, or author. Track the availability and stock of books.

Student Management: Add and maintain student records. Keep track of the books borrowed by each student. Enforce a limit of 3 books per student at any time. Transaction Management: Issue books to students with transaction logs including issue dates. Handle book returns, with automatic penalty calculations for late returns (penalty capped at $50). Maintain a comprehensive log of all transactions.

Graphical User Interface (GUI): Easy-to-navigate interface developed with Tkinter. Dedicated sections for managing books, students, and transactions. Data Persistence: Data stored in CSV files (books.csv, students.csv, and logs.csv). The system automatically loads and saves data when the application starts and exits.

How the System Works: Book Issue:

Ensures the book is available and the student hasn't exceeded their borrowing limit. Deducts one copy from the book stock and records the transaction. Book Return:

Updates book stock upon return. Removes the book from the student's borrowing list. Automatically calculates penalties for late returns, with a cap of $50, and records the return transaction. Search:

Search books or students quickly using the search bar, with results filtered by keyword (ID, title, or author).

Technologies Used:

Python Modules:

tkinter: For building the graphical interface. csv: For file handling and data storage. datetime: For managing issue/return dates and calculating penalties. messagebox: For user feedback and handling errors. Usage:

Run the Application: Launch the application by running python library_management.py.

Using the GUI: Use the search bar to find books or students. Manage book issues and returns directly from the interface. View late return penalties where applicable.

Limitations: The system relies on CSV files for data storage, which may not scale efficiently with large datasets. A migration to a database (e.g., SQLite) would provide better scalability. Error handling and input validation could be expanded for improved robustness.

Future Enhancements: Implement a reservation system for books. Add user authentication to restrict access to librarian functionalities. Integrate data visualization features for transaction trends and library usage. Transition from CSV file storage to a more efficient database system to handle larger volumes of data.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages