UniLib — University Library Management System
A full-stack enterprise web application built for universities to automate physical book inventory, member cards, circulation borrowing workflows, late-fee management, and administration analytics.
The Problem & Context
Many university departments manage physical library assets through fragmented spreadsheets or manual paper ledgers. This results in lost inventory, untracked book renewals, and manual calculation of late fines.
UniLib was built to provide an institutional-grade platform: centralizing thousands of titles, automating member check-out/return cycles with barcode scanning readiness, and giving department heads live metrics on book circulation.
System Features
Catalog & Inventory Management
ISBN-based lookups, volume copy tracking, shelf aisle tagging, and automated out-of-stock reservation queues.
Automated Borrow / Return Flow
Streamlined checkout modal calculating automatic due dates, email reminder triggers, and automated overdue penalty calculations.
Role-Based Access Control (RBAC)
Granular permission scopes separating Student self-service portals from Librarian issuance desks and System Admin controls.
Circulation Analytics
Visual reports on most-borrowed topics, active reading trends, student delinquency rates, and inventory audits.
Engineering Challenges & Solutions
Challenge 1: Race Conditions in Last-Copy Book Reservation
When multiple students attempt to reserve the final copy of a popular textbook simultaneously, race conditions can cause negative stock counts. Implemented MongoDB atomic document transactions (findOneAndUpdate with copy counter conditions) to guarantee ACID compliance.
Challenge 2: Efficient Multi-Field Catalog Indexing
Searching across tens of thousands of books by title, author, ISBN, and tags caused slow table scans. Created compound text indexes in MongoDB with weighted scoring, reducing query response times from 340ms to under 18ms.