{"id":25619529,"url":"https://github.com/mmj030703/online-library-system","last_synced_at":"2026-04-09T02:02:28.842Z","repository":{"id":272241926,"uuid":"915949133","full_name":"mmj030703/Online-Library-System","owner":"mmj030703","description":"This is a MERN stack project where I have built a online library.","archived":false,"fork":false,"pushed_at":"2025-02-11T07:06:08.000Z","size":208,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-02T16:46:30.104Z","etag":null,"topics":["api","mern-stack","mongodb","nodejs","project","reactjs","redux-toolkit"],"latest_commit_sha":null,"homepage":"https://online-library-system-mmj030703.onrender.com/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mmj030703.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-13T06:55:58.000Z","updated_at":"2025-02-11T07:06:11.000Z","dependencies_parsed_at":"2025-01-13T07:28:48.556Z","dependency_job_id":"d8e6341e-8a4b-4d8b-9f6e-f3b2d975dba1","html_url":"https://github.com/mmj030703/Online-Library-System","commit_stats":null,"previous_names":["mmj030703/online-library-system"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mmj030703/Online-Library-System","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmj030703%2FOnline-Library-System","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmj030703%2FOnline-Library-System/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmj030703%2FOnline-Library-System/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmj030703%2FOnline-Library-System/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mmj030703","download_url":"https://codeload.github.com/mmj030703/Online-Library-System/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mmj030703%2FOnline-Library-System/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31581864,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"online","status_checked_at":"2026-04-09T02:00:06.848Z","response_time":112,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","mern-stack","mongodb","nodejs","project","reactjs","redux-toolkit"],"created_at":"2025-02-22T06:18:05.532Z","updated_at":"2026-04-09T02:02:28.827Z","avatar_url":"https://github.com/mmj030703.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **Online Library System**\n\nWelcome to the **Online Library System**, a comprehensive platform for viewing different category of books. Built using the MERN stack, this system provides functionality for browsing and viewing books.\n\n## Table of Contents\n\n1. [Project Overview](#project-overview)\n2. [Features](#features)\n3. [Installation](#installation)\n4. [Usage](#usage)\n5. [API Endpoints](#api-endpoints)\n6. [Project Structure](#project-structure)\n7. [Technologies Used](#technologies-used)\n8. [License](#license)\n\n## Project Overview\n\nThe **Online Library System** is a **MERN-based application** designed for users to view different category of books. With an intuitive UI, it allows users to browse books by category, search books, add new books, and view detailed information about each book.\n\n### Live Demo\n\n_[Link to Demo](https://online-library-system-mmj030703.onrender.com/)_\n\n---\n\n## Features\n\n- **Add New Books**: Users can add books with details like title, author, category, and publication year.\n- **Browse Library**: View all books categorized for easy navigation.\n- **Search Books**: Quickly find books.\n- **View Book Details**: Access detailed information such as the description, rating, and release year of a book.\n- **Responsive Design**: Optimized for all screen sizes.\n\n---\n\n## Installation\n\n### Prerequisites\n\nEnsure you have the following installed:\n\n- [Node.js](https://nodejs.org/) (v14 or later)\n- [MongoDB](https://www.mongodb.com/try/download/community) (local or hosted instance)\n- [ImageKit](https://imagekit.io/) (Create ImageKit account)\n\n---\n\n### Backend Setup\n\n1. Clone the repository:\n\n   ```bash\n   git clone https://github.com/mmj030703/Online-Library-System.git\n   ```\n\n2. Change Directory\n\n   ```bash\n   cd ./backend\n   ```\n\n3. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n4. Create a `.env` file and add the following:\n\n   ```env\n   PORT=5000\n   DATABASE_NAME=\u003cdb_name\u003e\n   MONGODB_URI=\u003cmongodb_uri\u003e\n   IMAGEKIT_PUBLIC_KEY=\u003cimagekit_publickey\u003e\n   IMAGEKIT_PRIVATE_KEY=\u003cimagekit_privatekey\u003e\n   IMAGEKIT_URL_ENDPOINT=\u003cimagekit_url_endpoint\u003e\n   ```\n\n5. Start the server:\n\n   ```bash\n   npm start\n   ```\n\n   The backend will run on `http://localhost:5000`.\n\n---\n\n### Frontend Setup\n\n1. Navigate to the frontend repository:\n\n   ```bash\n   cd Online-Library-System\n   ```\n\n2. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n3. Start the development server:\n\n   ```bash\n   npm run dev\n   ```\n\n   The frontend will run on `http://localhost:5173`.\n\n---\n\n## Usage\n\n1. Open the application and browse the library to view available books by category.\n2. Users can use the \"Add Book\" link in the navbar to add new books to the collection.\n3. Click on a book to view its detailed information.\n4. Use the search bar on the browse page to locate books by title or author.\n\n---\n\n## API Endpoints\n\n#### Base URL\n\nLocal Base Url: `http://localhost:5000/api/v1`\n\nHosted Base Url: `https://online-library-system-97mj.onrender.com/api/v1`\n\n### Books\n\n| Method | Endpoint                    | Description               |\n| ------ | --------------------------- | ------------------------- |\n| GET    | `/books/all`                | Get all books             |\n| POST   | `/books/add`                | Add a new book            |\n| GET    | `/books/book/:id`           | Get book details by ID    |\n| GET    | `/books/category/:category` | Get books by cateogry ID  |\n| GET    | `/books/search`             | Get books by search query |\n\n### Category\n\n| Method | Endpoint                    | Description        |\n| ------ | --------------------------- | ------------------ |\n| POST   | `/categories/add/:category` | Add a new category |\n| GET    | `/categories/all`           | Get all categories |\n\n---\n\n## Project Structure\n\n```plaintext\nonline-library-system/\n├── backend/\n│   ├── config/          # Configuration files\n│   ├── controllers/     # Backend logic\n│   ├── models/          # Mongoose models\n│   ├── routes/          # Backend API routes\n│   ├── middlewares/     # Backend middlewares\n│   ├── utils/           # Utility files\n│   └── server.js        # Backend entry point\n├── public/\n├── src/\n│   ├── components/      # React components\n│   ├── utils/           # Utility files\n│     ├── store/          # Redux Store\n│        ├── slices/          # Redux Slices\n│        ├── bookStore.js/          # Redux Store file\n│   ├── pages/           # React pages\n│   ├── App.jsx          # Application component\n│   └── main.jsx         # Frontend entry point\n```\n\n---\n\n## Technologies Used\n\n- **Backend**:\n\n  - Node.js, Express, MongoDB, Mongoose, ImageKit\n\n- **Frontend**:\n  - React, Tailwind CSS, Redux Toolkit, React Router.\n\n---\n\n## License\n\nThis project is licensed under the **MIT License** - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmj030703%2Fonline-library-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmmj030703%2Fonline-library-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmmj030703%2Fonline-library-system/lists"}