Skip to content

Latest commit

 

History

History
156 lines (88 loc) · 3.53 KB

README.md

File metadata and controls

156 lines (88 loc) · 3.53 KB

📚 Library Management System

Welcome to the Library Management System! This Node.js-based system offers two portals: User and Admin. It equips users and administrators with powerful tools to efficiently manage library resources.

Library

Features

User Portal

  1. Signup User 📝

    • Create an account with ease by providing necessary details.
  2. Login User 🔑

    • Seamlessly access your account using your credentials.
  3. Forget Password 🤔

    • No worries if you forget your password; request a reset link via email.
  4. Reset Password 🔄

    • Get back in action by resetting your password with a simple email link.
  5. Set New Password 🆕

    • Choose a new password after resetting it securely.
  6. View Profile 👤

    • Peek at your profile information effortlessly.
  7. Edit Profile ✏️

    • Keep your details up to date with our user-friendly profile editor.
  8. User Dashboard 🏠

    • An interactive dashboard offering you all the tools you need.
  9. Review Task ✍️

    • Dive into book reviews with features like:
      • Adding your thoughts on a book.
      • Editing your reviews.
      • Deleting reviews that no longer serve you.
      • Exploring all reviews for a specific book.
  10. Search Book by Name 🔍

    • Find books by their title in a snap.
  11. Search Book by Category 📚

    • Easily filter books by category for efficient browsing.
  12. Book Details ℹ️

    • Get the lowdown on any book with our detailed view.
  13. Borrow Books 📖

    • Borrow books from the library for your reading pleasure.
  14. Return Book ↩️

    • Return borrowed books with a simple process.
  15. Like/Dislike Book 👍👎

    • Express your feelings about books by liking or disliking them.

Admin Portal

  1. Add Book 📚➕

    • Expand the library catalog by adding new books.
  2. Edit Book ✏️

    • Modify book information like titles, authors, and categories.
  3. Delete Book 📚❌

    • Keep the catalog organized by removing books.
  4. Add Category ➕📚

    • Organize books with new category additions.
  5. Edit Category ✏️

    • Fine-tune existing book categories for precision.
  6. Delete Category 🗑️📚

    • Remove categories that are no longer needed.
  7. Admin Dashboard 🚀

    • A hub of essential information and actions for administrators.
  8. View Users 👥

    • Explore a list of all registered users.
  9. User Details 👤📋

    • Dive deeper into user profiles for insights.
  10. Borrowed Books List 📚📋

    • Keep tabs on borrowed books and their status.

Project Structure

Our project adheres to the MVC (Model-View-Controller) pattern, fortified with middleware, validations, and services to provide top-notch functionality and security.

Getting Started

  1. Clone this repository to your local machine.

  2. Install the required dependencies with:

    npm install
    
  3. Configure database settings in the .env file and set up the database.

  4. Launch the application:

    npm start
    
  5. Access the application through your web browser at http://localhost:8000.

Technologies Used

  • Node.js
  • Express.js
  • MongoDB
  • JWT
  • Nodemailer
  • Joi
  • Joi-Password
  • Winston
  • Winston-MongoDb
  • Bcrypt

Contributors

  • [Ishan Singh]

Dive into the world of books and seamless library management with our system. Happy reading! 📚📖📚