Book Buddi - Library Management System

A comprehensive web-based Library Management and Book Catalogue System built with ASP.NET Core and Razor Pages, featuring clean 3-tier architecture.

ASP.NET Core 9.0C#Razor PagesEntity Framework Core 9.0SQL ServerAutoMapperIdentity AuthenticationRepository PatternUnit of Work Pattern

Project Preview

Click the image for better quality
Loading carousel...

Project Overview

Book Buddi is a comprehensive web-based Library Management System designed for both general users and administrators. It provides a complete solution for library operations including book cataloguing, borrowing management, notifications, and comprehensive reporting. Built using ASP.NET Core 9.0 with a clean 3-tier N-layer architecture following the ASI (Abstraction-Service-Interface) pattern.

My Role & Responsibilities

Main Role:

Team Leader

Key Responsibilities/Focus Areas:

Project Manager, Backend Developer, Database Administrator

Key Frontend Features

  • Razor Pages for server-side rendered UI with clean separation of concerns.
  • Advanced search functionality for quick book discovery.
  • Secure admin panel with authentication-protected routes.
  • Book catalogue management interface (list, add, edit, delete).
  • User-friendly borrowing and return workflow.
  • Notification dropdown panel and dedicated notifications page.

Key Backend Features

  • Clean 3-tier N-layer architecture following ASI (Abstraction-Service-Interface) pattern.
  • Repository Pattern and Unit of Work Pattern for data access abstraction and transaction management.
  • Entity Framework Core 9.0 with migration-based schema management.
  • ASP.NET Core Identity for secure authentication with role-based access control (Admin/Member).
  • AutoMapper for clean object-to-object mapping between entities and DTOs.
  • Comprehensive audit trail system tracking CreatedBy, CreatedTime, UpdatedBy, UpdatedTime.
  • RESTful API design for CRUD operations on books, members, and borrowing records.
  • Reporting module with borrowing activity, inventory, member reports, and lost books tracking.
  • Notification system for book request updates, due date reminders, and overdue alerts.

Challenges & Solutions

Implementing a scalable and maintainable architecture for a growing library system.

Adopted clean 3-tier N-layer architecture with Repository and Unit of Work patterns, ensuring separation of concerns and easy testability.

Managing complex database relationships between books, members, borrowing records, and notifications.

Used Entity Framework Core with Fluent API configurations for precise relationship mapping and migration-based schema management.

Ensuring data integrity and tracking changes for audit compliance.

Implemented comprehensive audit trail pattern with automatic tracking of CreatedBy, CreatedTime, UpdatedBy, and UpdatedTime on all entities.

Coordinating team development with multiple contributors working on different features.

Established Gitflow-inspired workflow with feature branches, pull request reviews, and clear commit guidelines for accountability.