A Library Management System developed using tkinter in Python
Note
ALL CONTENTS IN THIS REPO ARE FOR EDUCATIONAL PURPOSES ONLY.
Shelfie! is a GUI for a simple personal home library management system, developed using the tkinter library in Python. You can browse, add, update and delete book records saved on a SQLite database.
More screenshots below.
- Description
- Features
- Project Structure
- Prerequisites
- Getting Started
- Author(s)
- Version History
- Future Work
- License
- Contributing
- Acknowledgments
- Screenshots
- Simple and intuitive user interface built with Tkinter
- Basic CRUD operations on book records
- Cross-platform compatibility (Windows, macOS, Linux)
shelfie/
│
├── app/
│ │
│ ├── assets/
│ │ ├── copy/
│ │ └── images/
│ │
│ ├── config/
│ │ └── __init__.py
│ │
│ ├── data/
│ │
│ └── shelfie.py
│
├── docs/
├── .gitignore
├── LICENSE
├── README.md
└── requirements.txt
Before you begin, ensure you have met the following requirements:
- See
requirements.txt
-
Clone the repository
git clone https://github.com/ggeerraarrdd/shelfie.git
-
Navigate into the project directory
cd shelfie # For example
-
Create and activate a virtual environment
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install the dependencies
pip install -r requirements.txt
- None
-
Go into the app directory and run the command
python3 shelfie.py
-
Log in
Click
Sign in
.Note: The provided username and password are dummy credentials. The app lacks user authentication and management functionality. There is no data model or CRUD operations implemented for user accounts.
The initial release of Shelfie! was submitted as the final project for IS411: Introduction to Programming for Business Applications (DePaul University, Autumn 2022). That version used a PostgreSQL database instance hosted on AWS and the psycopg2 library.
Project brief as of Autumn 2022:
[Not posted.]
No ongoing development.
Clean up code(Update May 28, 2023: Code too unwieldy, so leaving Tkinter version behind and moving on to the web version from scratch.)Create a web version using a web framework (Flask or Django)(Update Oct 14, 2023: Github does not need another book management system repo)
This project is not accepting contributions at this time. It is intended solely for personal learning and exploration. However, feel free to clone the repository and use it as a learning resource.
- Could not have done this project without all the Tkinter tutorials by John Elder @flatplanet.
Screenshot of Login page of Shelfie! app featuring No. 159 - "La Bibliothèque: Vue plongeante" by Erik Desmazières. Image taken from app interface (Personal Collection, 2022). In the public domain.