0% found this document useful (0 votes)
14 views1 page

Coding Challenge

The document outlines a coding challenge to build a complete library management system, including backend API, frontend UI, and a database. Key features include librarian authentication, member and book management with CRUD operations, lending and fining workflows, and reporting capabilities. The estimated time for completion is 6-8 hours, with submission required via a GitHub repository link.

Uploaded by

kelvinknkoma86
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views1 page

Coding Challenge

The document outlines a coding challenge to build a complete library management system, including backend API, frontend UI, and a database. Key features include librarian authentication, member and book management with CRUD operations, lending and fining workflows, and reporting capabilities. The estimated time for completion is 6-8 hours, with submission required via a GitHub repository link.

Uploaded by

kelvinknkoma86
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 1

Book Library Management System: Full-Stack Coding Challenge

Objective: Build a complete library management system with backend API, frontend UI,
and a well-designed database. The system must support librarian authentication,
CRUD(Create, Read, Update and Delete) operations for books and members,
lending/fining workflows, and reporting.
Functional Requirements
1. Authentication
- Simple login for librarians (single role).
- Credentials:
o Username: `[email protected]`
o Password: `SecureLib@123` (store hashed with Bcrypt/Scrypt).

2. Member Management (CRUD)


- Fields: ID, Full Name, Email, Phone, Membership Date (auto-set), Status
(Active/Inactive).
- Constraints:
o Inactivate (soft-delete) members with active loans/unpaid fines.
o Prevent duplicate emails/phones.

3. Book Management (CRUD)


- Entities:
o Book Metadata: ISBN (unique), Title, Author, Publisher, Publication Year,
Genre.
o Book Copy: Copy ID (unique barcode), Status (`Available`, `Borrowed`,
`Lost`).
- Constraints:
o Delete metadata only if no copies exist.
o Track individual copies for lending history.

4. Lending & Fining


- Checkout:
o Assign a copy to a member.
o Auto-set due date (14 days from checkout).
- Return:
o Update copy status.
o Calculate fines: $1/day for overdue returns.
- Fines:
o Record fine amount, due date, payment status (`Paid`/`Unpaid`).
o Prevent book returns until fines are paid.
5. Reports
- Active Loans:
- Book title, member name, due date, overdue status (highlight if overdue).
- Member History:
- All transactions (checkout/return dates, fines) for a selected member.

Time Estimate: 6-8 hours


Submission: GitHub repo link with commit history.

You might also like