Skip to main content

Library

Overview

Book catalog management, issue/return tracking, overdue monitoring.

Book Record

{
id: string;
isbn: string;
title: string;
author: string;
publisher: string;
category: string; // e.g. "Fiction", "Science", "History"
rackNumber: string; // physical location
copiesTotal: number;
copiesAvailable: number; // total - issued
dateOfPurchase: Date;
cost: number;
}

Issue / Return Flow

Issue a Book

POST /school-admin/library/issue
{
"data": {
"bookId": "uuid",
"studentId": "uuid",
"issueDate": "2024-04-01",
"returnDate": "2024-04-15" // 14-day default
}
}

Decrements copiesAvailable. Creates LibraryBookIssue record with status ISSUED.

Return a Book

POST /school-admin/library/return
{
"data": {
"issueId": "uuid",
"returnDate": "2024-04-14"
}
}

Increments copiesAvailable. Updates LibraryBookIssue status to RETURNED.

Mark as Lost / Damaged

POST /school-admin/library/issue/:id/mark-lost

Flags the issue as LOST. Optionally applies a fine.

Overdue Books

GET /school-admin/library/overdue

Returns all books past their return date:

{
"data": [
{
"issueId": "uuid",
"studentName": "John Doe",
"class": "Class 5",
"bookTitle": "The Hobbit",
"dueDate": "2024-04-15",
"daysOverdue": 7,
"fine": 70
}
]
}

Fine calculation: configurable per school (default ₹10/day).

Reports

ReportDescription
Book InventoryAll books with availability status
Most IssuedTop borrowed books in the academic year
Student HistoryBooks issued/returned per student
Overdue ReportAll outstanding overdue books

Parents App

Parents can view their child's issued books and return dates:

GET /parent/library/books
{
"data": {
"currentlyIssued": [
{ "title": "The Hobbit", "issueDate": "2024-04-01", "returnDate": "2024-04-15" }
],
"history": [...]
}
}