Skip to content

About

A modern Library Management System built with Node.js, Express, and SQLite featuring secure authentication and responsive design

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 Library Management System

A modern, secure web-based Library Management System built with Node.js, Express, and SQLite. Features a responsive design, real-time data management, and secure authentication for students and administrators.

Node.js Express SQLite JavaScript

✨ Features

👥 User Management

  • Student Registration & Login
  • Admin Panel with advanced controls
  • Secure session management
  • Role-based access control (Student/Admin)

📖 Book Management

  • Dynamic book catalog with categories
  • Advanced search and filtering
  • Real-time availability tracking
  • Favorites/bookmarking system
  • Category-based organization

🔧 Administrative Features

  • Dashboard with real-time statistics
  • User management (CRUD operations)
  • Book inventory control
  • Feedback management system
  • Activity monitoring and logging

💻 Technical Features

  • Fully responsive design (Mobile/Tablet/Desktop)
  • Secure password hashing with bcrypt
  • Rate limiting and security headers (Helmet)
  • Express session management
  • RESTful API architecture

🚀 Getting Started

Prerequisites

  • Node.js (v14 or higher)
  • npm (v6 or higher)

Installation

# Clone the repository
git clone https://github.com/ahsanjust/LibraryManagementSystem.git
cd LibraryManagementSystem

# Install dependencies
npm install

# Start the server
npm start

Default Access

Role URL
Homepage http://localhost:3000
Student Login http://localhost:3000/student-login
Admin Login http://localhost:3000/admin-login

📁 Project Structure

LMS/
├── public/
│   ├── assets/
│   │   ├── css/        # Stylesheets
│   │   ├── js/         # Client-side JavaScript
│   │   └── images/     # Static images
│   └── views/          # HTML templates
├── config/             # Configuration files
├── docs/              # Documentation
├── server.js          # Main server file
├── package.json       # Dependencies & scripts
├── library.db         # SQLite database
└── README.md          # Project documentation

🛠️ Tech Stack

  • Backend: Node.js, Express.js
  • Database: SQLite3
  • Security: bcryptjs, express-session, helmet, express-rate-limit
  • Frontend: HTML5, CSS3, Vanilla JavaScript
  • Development: nodemon

📋 Available Scripts

npm start          # Start production server
npm run dev        # Start development server (with nodemon)
npm run db:init    # Initialize database
npm run db:reset   # Reset database

🔐 Security Features

  • Password hashing with bcrypt
  • Session-based authentication
  • Rate limiting protection
  • Helmet.js security headers
  • SQL injection prevention (parameterized queries)

📝 License

This project is licensed under the MIT License.

👨‍💻 Author

Ahsanul Haque

  • GitHub: @ahsanjust
  • University: Jessore University of Science and Technology

⭐ If you find this useful, please star the repository!

About

A modern Library Management System built with Node.js, Express, and SQLite featuring secure authentication and responsive design

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages