Skip to content

Personal Library Manager is a Python CLI tool for managing books. It allows users to add, remove, search, and track books, with JSON-based storage and backup handling for data security. Users can also view reading statistics like total books and reading progress.

Notifications You must be signed in to change notification settings

MuhammadAdnan1998/Personal_Library_Manager_Using_Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📚 Personal Library Manager

Python JSON MIT License Contributions Welcome

🚀 Overview

The Personal Library Manager is a Python-based terminal application designed to help users organize, track, and manage their personal book collections. It allows users to add, search, remove, and display books while maintaining a structured database using JSON files.

✨ Features

  • 📖 Add Books: Store book details including title, author, genre, publication year, and read status.
  • 🔍 Search Books: Search by book title or author name.
  • Remove Books: Delete books from the library.
  • 📜 Display Books: View the entire collection with formatted output.
  • 📊 Statistics: Get insights on your reading progress.
  • 🔄 Data Persistence: Saves book records in a JSON file with an automatic backup feature.

🛠️ Technologies Used

  • Python 3.8+
  • JSON for data storage
  • Shutil for file backup

📂 Project Structure

📂 Personal Library Manager
│── library.json             # Main storage file
│── library_backup.json      # Backup file
│── main.py                  # Main program script
│── README.md                # Project documentation

🔧 Installation & Usage

1️⃣ Prerequisites

Ensure you have Python 3.8+ installed. Check with:

python --version

2️⃣ Clone the Repository

git clone https://github.com/MuhammadAdnan1998/Personal_Library_Manager_Using_Python.git
cd personal-library-manager

3️⃣ Run the Application

python main.py

4️⃣ Follow the On-Screen Menu

You can choose from the following options:

  1. Add a book 📚
  2. Remove a book ❌
  3. Search for a book 🔍
  4. Display all books 📜
  5. Display statistics 📊
  6. Exit 🚪

📌 Example Usage

Welcome to your Personal Library Manager!
1. Add a book
2. Remove a book
3. Search for a book
4. Display all books
5. Display statistics
6. Exit
Enter your choice: 1
Enter the book title: The Great Gatsby
Enter the author: F. Scott Fitzgerald
Enter the publication year: 1925
Enter the genre: Fiction
Have you read this book? (yes/no): yes
Book added successfully!

🎯 Future Enhancements

  • 📡 GUI Version using Tkinter or PyQt.
  • 🔄 Sync with Cloud Storage (Google Drive/Dropbox).
  • 📑 Export/Import Library (CSV, XML support).

📝 License

This project is licensed under the MIT License.

🤝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork this repository
  2. Create a new branch (feature-branch)
  3. Commit your changes (git commit -m 'Add new feature')
  4. Push to your branch (git push origin feature-branch)
  5. Open a Pull Request

📞 Contact

For any queries or suggestions, feel free to reach out:


🔖 Tagging: python, library-management, book-tracker, json-storage, automation, CLI-tool

Happy Coding! 🚀

About

Personal Library Manager is a Python CLI tool for managing books. It allows users to add, remove, search, and track books, with JSON-based storage and backup handling for data security. Users can also view reading statistics like total books and reading progress.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages