Library Management System

Python, SQL, SQLAlchemy, Database Design, MySql

Main project image

Database system automating library operations with Python/SQLAlchemy.

Visit the project ↗

Illustration by MOMO Studio on Unsplash

Table of Contents

  1. Overview
  2. Role
  3. Problem
  4. Goal
  5. Why?
  6. Solution

Overview

Database solution for managing 10k+ library records with automated workflows and optimized data integrity. Developed for Librarians with easy to use GUI.


👨‍💻 Role

Lead Developer


❓ Problem

In a library…

  1. Some books may have missing publisher or author(s)
  2. Some books may have multiple authors
  3. How can the database handle multiple authors, no authors, or publishers? This is where 3NF comes in!

🎯 Goal

  1. Automate circulation processes (check-in/checkout)
  2. Improve data integrity and reduce redundancy
  3. Create scalable documentation for future enhancements
  4. Adhere to database 3NF constraints

⁉️ Why?

We need 3NF since…

  1. Reduced Redundancy:
    • Eliminated duplicate publisher data (65% fewer redundant entries).
  2. Improved Integrity:
    • Updates to publisher details (e.g., city) reflect across all books instantly.
  3. Optimized Queries:
    • Faster searches via normalized tables (e.g., “Find all books by PublisherCity”).
  4. Scalability:
    • Enabled seamless integration of new features like checkout history tables.

✨ Solution