A fully functional Library Management System built with HTML, CSS, and JavaScript. Manage books, members, issue/return tracking, and fine calculations — all in one place.
| Home Page | Book List | Issue Book |
|---|
- 📖 Add / Remove Books — Easily manage your book collection
- 🔍 Search Books — Find any book instantly by title or author
- 🎓 Member Login — Student and member management
- 📤 Issue Books — Issue books to members with due dates
- 📥 Return Books — Track returned books easily
- 💰 Fine Calculation — Auto-calculate fines for late returns
- 💾 Local Storage — Data saved in browser, no backend needed
| Technology | Purpose |
|---|---|
| HTML5 | Page Structure |
| CSS3 | Styling & Animations |
| JavaScript (ES6) | Logic & Interactivity |
| Local Storage | Data Persistence |
library-management-system/
│
├── index.html → Home Page
├── books.html → Book List Page
├── members.html → Member Management Page
├── issue.html → Issue / Return Books Page
│
├── css/
│ └── style.css → All Styles
│
├── js/
│ ├── main.js → Main JavaScript Logic
│ ├── books.js → Book Management Functions
│ ├── members.js → Member Management Functions
│ └── fines.js → Fine Calculation Logic
│
├── screenshots/
│ ├── home.png
│ ├── books.png
│ └── issue.png
│
└── README.md → This File
git clone https://github.com/your-username/library-management-system.gitcd library-management-systemSimply open index.html in your browser — no installation needed!
# On Windows
start index.html
# On Mac
open index.html- Go to the Books page
- Fill in Book Title, Author, and Category
- Click Add Book — it's saved instantly!
- Go to Issue Book page
- Enter Member ID and Book ID
- Set the due date
- Click Issue — done!
- Fine is calculated automatically when a book is returned late
- Default fine: ₹2 per day after due date
This project covers these important JavaScript concepts:
| Concept | Where Used |
|---|---|
| Variables & Data Types | Book & Member data |
| Arrays & Objects | Storing book lists |
| Functions | Add, Remove, Search logic |
| DOM Manipulation | Updating the UI |
| Events | Button clicks, Form submit |
| Local Storage | Saving data in browser |
| Date Object | Due date & fine calculation |
| Array Methods (filter, map, find) | Search & display books |
- How to structure a multi-page website
- How to use JavaScript to manipulate HTML dynamically
- How to store and retrieve data using Local Storage
- How to calculate dates and time differences in JavaScript
- How to build a complete real-world project from scratch
- Add backend with Node.js & Express
- Connect to a real database (MongoDB or MySQL)
- Add user authentication (Login/Signup)
- Email notifications for due dates
- Export reports as PDF
- Mobile app version
Contributions are welcome! Here's how:
- Fork this repository
- Create a new branch:
git checkout -b feature/your-feature - Make your changes and commit:
git commit -m "Add your feature" - Push to the branch:
git push origin feature/your-feature - Open a Pull Request
This project is licensed under the MIT License — feel free to use it for learning and personal projects.