Skip to content

HtunAungKyaw73/Library-Hub

Repository files navigation

📚 Library Management System

A modern, full-stack Library Management System designed for the ISP Community. This application provides a seamless experience for discovering, borrowing, and tracking books, powered by a robust backend and a cutting-edge frontend.

✨ Key Features

  • 🔍 Smart Search & Discovery: Efficiently browse the collection using Ag-Grid with support for filtering by title, author, or publication year.
  • 📖 Easy Borrowing System: Request books with a single click, track due dates, and manage your personalized reading list.
  • 📊 Dynamic Analytics: Visualize the library's collection through beautiful charts, including language distribution and top contributors.
  • 👨‍🏫 Author Directory: Explore comprehensive profiles of authors and browse their complete bibliographies within the system.
  • 🛡️ Secure Authentication: Personal accounts with hashed password security, enabling individual borrowing history and digital library cards.
  • ⚙️ Admin Dashboard: Centralized management for library administrators to track all borrowed records and system usage.

🛠️ Technology Stack

🚀 Key Functions & API Integration

The system communicates with clinical precision through its Baserow integration layer:

  • Inventory Management: getBooks(), getBook(id) - Fetch and display the entire library catalog or specific titles.
  • Author Relations: getAuthors(), getBooksByAuthorId(id) - Map complex relationships between creators and their works.
  • User Lifecycle: createUser(), getUserByEmail() - Handle secure enrollment and session management.
  • Borrowing Logic: createBorrowRecord(), updateBorrowRecord() - Manage the stateful transition of books from available to borrowed/returned.
  • Analytics Engine: getAllBorrowRecords() - Aggregate data for real-time visualization of library trends.

Sample Views

Landing Page Login Page Books Page Analytics Page Book Detail Page Book Detail Page Mybooks Page Book Detail Page Author Page Author Detail Page Admin Detail Page Admin Detail Page

🏁 Getting Started

Prerequisites

  • Node.js (Latest Stable)
  • pnpm / npm / yarn
  • A Baserow account and API token

Installation

  1. Clone the repository:

    git clone https://github.com/your-repo/library-management-system.git
    cd library-management-system
  2. Install dependencies:

    pnpm install
  3. Run the development server:

    pnpm dev

Open http://localhost:3000 with your browser to see the result.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors