The Bookstore Management System is a comprehensive platform designed to facilitate the browsing, searching, and purchasing of books for users. It also enables administrators to efficiently manage inventory, orders, and customer information.
- Browse Books: View a wide range of books available in the store.
- Search Books: Function not yet implemented.
- Shopping Cart: Add books to the shopping cart and proceed to checkout.
- User Authentication: Sign up, log in, and manage user accounts.
- Order Processing: Handle the complete checkout process including payment.
- Inventory Management: Add, update, and delete book information.
- Order Management: View and process customer orders.
- User Management: Manage customer information and order history.
- Screens: Implements user interfaces for browsing books, searching, displaying book details, and handling the checkout process.
- Responsiveness: Ensures the user interface is responsive and accessible.
- Book Management: Handles CRUD operations for books.
- User Authentication: Manages user sign-up, login, and authentication.
- Cart Management: Manages items in the user's shopping cart.
- Integration: Ensures seamless interaction between the frontend and backend.
- Schema Design: Implements a relational database schema to store book information, customer data, orders, and transactions.
- Data Storage: Ensures efficient retrieval and storage of data.
- Programming Language: Python 3.9
- Framework: PySide6 for frontend development
- UI Enhancement: PySide6-Fluent-Widgets
- Data Storage: JSON for data storage
- Modules: Listed in
requirements.txt
- Install requirements
pip install -r requirements.txt
- Run the Application:
python MainWindow.py
- Access the application through the GUI to browse, search, and manage books.
MainWindow.py
: Main window of the applicationHome.py
: Home screen for browsing booksCart.py
: Shopping cart interfaceCartCard.py
: Cart item componentBookCard.py
: Book item componentManagement.py
: Admin interface for managing inventory and ordersPopupBox.py
: Utility for displaying popup messages
Backend.py
: Handles backend logic for book management, user authentication, and order processing
requirements.txt
: List of dependencies
- System Design: Detailed explanation of system architecture.
- Flowcharts: Visual representation of system processes.
- Pseudocode: High-level code logic for critical functionalities.
- Database Schema: Design of the database structure.
{
"8-digit uuid": {
"name": "Book Name 1",
"author": "Author 1",
"price": 2-decimal float,
"desc": "Description",
"id": "8-digit uuid",
"cover": path | null
},
"8-digit uuid": {
"name": "Book Name 2",
"author": "Author 2",
"price": 2-decimal float,
"desc": "Description",
"id": "8-digit uuid",
"cover": path | null
}
}
{
"8-digit uuid": {
"name": "User Name 1",
"email": "[email protected]",
"uniqID": "8-digit uuid",
"pwd": "md5 string",
"cart": {
"8-digit uuid": Quantity,
"8-digit uuid": Quantity,
"8-digit uuid": Quantity
},
"permission": "admin"
},
"8-digit uuid": {
"name": "User Namer 2",
"email": "[email protected]",
"uniqID": "8-digit uuid",
"pwd": "md5 string",
"cart": {},
"permission": "user"
}
}
- POEG1726: Project Lead, Developer
- Contributor Name: Developer