Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/qutubuddinkhan07/library-management-system-lms-
This is a simple Library Management System (LMS) built using Node.js, Express, and EJS for the front-end. The system supports user authentication, book management (add/remove), and a member dashboard for borrowing/returning books.
https://github.com/qutubuddinkhan07/library-management-system-lms-
css ejs express html javascript library-management-system nodejs web-app
Last synced: about 1 month ago
JSON representation
This is a simple Library Management System (LMS) built using Node.js, Express, and EJS for the front-end. The system supports user authentication, book management (add/remove), and a member dashboard for borrowing/returning books.
- Host: GitHub
- URL: https://github.com/qutubuddinkhan07/library-management-system-lms-
- Owner: qutubuddinkhan07
- License: mit
- Created: 2024-11-21T20:40:50.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2024-11-21T21:17:34.000Z (about 1 month ago)
- Last Synced: 2024-11-21T21:30:30.399Z (about 1 month ago)
- Topics: css, ejs, express, html, javascript, library-management-system, nodejs, web-app
- Language: JavaScript
- Homepage:
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Library Management System (LMS)
This is a simple Library Management System (LMS) built using Node.js, Express, and EJS for the front-end. The system supports user authentication, book management (add/remove), and a member dashboard for borrowing/returning books.
### Features
* Admin Panel: Manage books, view user details, and remove users if no books are borrowed.
* Member Panel: Borrow and return books, view borrowed book details.
* Book Inventory: Add and remove books from the system (admin-only).
* User Management: Admin can view user details and remove users (if they have not borrowed any books).---
### Table of Contents
* Prerequisites
* Installation
* Run Locally
* Usage
* Folder Structure
* License
---### Prerequisites
Before you begin, ensure you have the following installed:* Node.js: You need Node.js to run the backend server. Download and install it from here.
* npm: Node package manager (npm) is included with Node.js, but make sure it's updated by running npm install -g npm.
---### Installation
* Clone the repository:
* Open a terminal (or command prompt) and run the following command to clone this repository:
```git clone https://github.com/yourusername/LMS.git```* Navigate to the project directory: After cloning the repository, go into the project folder: ```cd LMS```
### Install dependencies:
The next step is to install the required dependencies for the project. Run the following command in the terminal: ```npm install```
This will install all the necessary packages listed in package.json.
---### Run Locally
Once all dependencies are installed, you can start the server locally.* Start the server:
Run the following command to start the application: ```npm run dev```
Alternatively, if you are using the standard Node.js command (without nodemon), run: ```node server.js```
* Access the application:
Open a browser and go to ```http://localhost:3000```. You should be able to see the login or signup page.
---
### Usage
1. Login & Signup
* Login: Users can log in using their credentials (username and password).
* Signup: New users can sign up with their name, contact, and password.2. Admin Dashboard
* Admins can view and manage the book inventory.
* Admins can add or remove books (if no member has borrowed the book).
* Admins can view all users and their borrowed books.
* Admins can remove users if they have not borrowed any books.3. Member Dashboard
* Members can view the book inventory, borrow available books, and see the details of their borrowed books.4. Book Borrowing and Returning
* Members can borrow books if available and return them once they are done.
---## Design
![Logo](images/img1.png)![Logo](images/img2.png)
![Logo](images/img3.png)
![Logo](images/img4.png)
![Logo](images/img5.png)
![Logo](images/img6.png)
![Logo](images/img7.png)
---
### Folder Structure
The repository has the following structure:```
LMS/
│
├── public/ # Static files (CSS, JS)
│ ├── css/ # Stylesheets
│ └── js/ # JavaScript files
│
├── views/ # EJS templates for rendering HTML
│ ├── admin.ejs # Admin dashboard page
│ ├── members.ejs # Member dashboard page
│ └── index.html # Login/Signup page
│
├── server.js # Main server file (Node.js)
├── package.json # Project dependencies and scripts
└── README.md # This file
```## License
This project is licensed under the MIT License - see the [LICENSE](./LICENSE) file for details.
---
Feel free to update the instructions and links as needed. Let me know if you need any further customization or clarifications!