Skip to content

Project 2 : My Library Management System built with Node.js, Express, & EJS for efficient book & author management.

License

Notifications You must be signed in to change notification settings

prashantsaini1525/My-Library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyLibrary

MyLibrary is a simple library management web application built with Node.js, Express, and MongoDB (using Mongoose). This project demonstrates CRUD operations for managing authors and books, including uploading a cover image for each book.


Demo Video

Click to watch the demo video

Demo Video


Screenshots

Below is a grid of screenshots demonstrating various pages of the application:

Screenshot 1 Screenshot 2
Screenshot 3 Screenshot 4
Screenshot 5

Features

  • Author Management:

    • Add, update, and delete authors
    • View a list of authors
  • Book Management:

    • Add, update, and delete books
    • Upload a cover image for each book
    • View a list of books
  • CRUD Demonstration:

    • A simple example to illustrate managing related data using Node.js, Express, and MongoDB

Project Motivation

The primary goal of MyLibrary is to serve as a learning tool for basic CRUD operations. It demonstrates how authors and books (with cover images) can be managed using a modern web stack. This project does not include full book file uploads (such as PDFs), keeping the focus on core functionality.

Installation

  1. Clone the repository:

    git clone https://github.com/prashantsaini1525/MyLibrary.git
    cd MyLibrary
  2. Install dependencies:

    npm install
  3. Set Up Environment Variables:

  • Create a .env file in the root directory with your configuration:

    MONGO_URI=your_mongodb_connection_string
    PORT=3000
  1. Run the Application:
  • Start the server:

    npm start
  • Or use development mode:

    npm run devStart
  1. Access the Application:

Project Structure

  • server.js: Main file setting up Express and connecting to MongoDB.

  • models/: Contains Mongoose models for Authors and Books.

  • views/: Contains EJS templates for rendering the UI.

  • public/: Contains static assets (including cover images).


Future Enhancements

  • Book File Uploads: Add functionality to allow uploading complete book files (e.g., PDFs) using middleware like Multer.

  • User Authentication: Implement authentication for managing access to book and author data.

  • Enhanced UI/UX: Improve the frontend with modern frameworks or design enhancements.

Contributing

Contributions are welcome! Feel free to fork the repository, open pull requests, or submit issues with suggestions and bug reports.

📄 License

This project is licensed under the MIT License. See the LICENSE file for details.

About

Project 2 : My Library Management System built with Node.js, Express, & EJS for efficient book & author management.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published