Smart Library Management System
Full-stack library system with role-based access, book loans, and a real audit trail.
What it does
A complete MERN application with three user roles — admin, librarian, and member. Librarians manage the book catalogue and issue/return loans; members view available books and track their own borrowing history; admins see the full audit log of every action taken. Built on a reusable core platform (auth, RBAC, generic CRUD engine, notifications) so the architecture discussion in the viva has real depth.
Features
- ✓Three roles: admin, librarian, member — each with a distinct dashboard
- ✓Issue and return loans with automatic availability tracking
- ✓Member self-service: view available books and personal loan history
- ✓Full audit log capturing every create/update/delete action by user
- ✓Generic CRUD engine — adding new entity types requires only a schema file
What's included
- ✓Full working MERN application (React + Express + MongoDB)
- ✓8-chapter Word report (architecture, RBAC design, ER diagram, testing)
- ✓14-slide presentation deck
- ✓Viva question bank with cheat sheet and pitch script
- ✓Seed script for demo accounts + sample data
Pricing
Same pricing tiers across every project kit.
Code Only
₹1,500
The working application, source code, and setup instructions.
- ✓Full source code
- ✓Setup/run instructions
- ✓requirements.txt
Code + Documentation
₹2,500
Everything in Code Only, plus the full submission report and slide deck.
- ✓Everything in Code Only
- ✓8-chapter Word report
- ✓Presentation deck
- ✓Architecture diagrams
Full Package
₹3,500
Everything you need to submit and defend the project, viva-ready.
- ✓Everything in Code + Documentation
- ✓Viva question bank + cheat sheet
- ✓Customized to your name/college
- ✓WhatsApp support until submission
Questions about this project
What database does it use?+
MongoDB — running locally or on Atlas. Connection string goes in .env; a seed script populates demo accounts and sample books so it's usable in minutes.
Can the roles be changed or extended?+
Yes — roles are defined in project.config.js and the generic requireRole middleware enforces them. Adding a new role is a config change, not a code change.