{"id":15471683,"url":"https://github.com/lily4178993/bookstore-cms","last_synced_at":"2026-03-16T22:04:29.587Z","repository":{"id":196496069,"uuid":"694658505","full_name":"lily4178993/bookstore-cms","owner":"lily4178993","description":"This web application allows users to manage their book collection. It provides features such as adding new books, removing books, and categorizing them by genre. The application is built using React and Redux for state management, making it easy to organize and track your reading list.","archived":false,"fork":false,"pushed_at":"2024-08-31T02:48:25.000Z","size":6229,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2024-10-19T01:15:46.998Z","etag":null,"topics":["api-integration","bookstore","javascript","learning-project","react","redux","redux-toolkit","state-management","web-application"],"latest_commit_sha":null,"homepage":"https://nelly-bookstore-cms.netlify.app/","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/lily4178993.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":"2023-09-21T12:43:26.000Z","updated_at":"2024-06-20T21:17:36.000Z","dependencies_parsed_at":"2023-09-29T03:32:52.780Z","dependency_job_id":"c74d8727-d8e4-4c67-ba0d-a5c8a97392f4","html_url":"https://github.com/lily4178993/bookstore-cms","commit_stats":{"total_commits":49,"total_committers":2,"mean_commits":24.5,"dds":"0.10204081632653061","last_synced_commit":"361593777da9e753defff65e2b74e723eb4dd592"},"previous_names":["lily4178993/bookstore-cms"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/lily4178993/bookstore-cms","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lily4178993%2Fbookstore-cms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lily4178993%2Fbookstore-cms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lily4178993%2Fbookstore-cms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lily4178993%2Fbookstore-cms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lily4178993","download_url":"https://codeload.github.com/lily4178993/bookstore-cms/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lily4178993%2Fbookstore-cms/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278254774,"owners_count":25956677,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-04T02:00:05.491Z","response_time":63,"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-integration","bookstore","javascript","learning-project","react","redux","redux-toolkit","state-management","web-application"],"created_at":"2024-10-02T02:21:16.285Z","updated_at":"2025-10-04T02:30:27.366Z","avatar_url":"https://github.com/lily4178993.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n\n# **Bookstore CMS**\n\nWelcome to the Bookstore CMS, a web application for managing and categorizing your book collection. This project provides an intuitive user interface to add, edit, and categorize books, making it easy to keep your library organized. The Bookstore CMS is built with React, Redux, and React Router for efficient state management and dynamic routing.\n\n## **Tech Stack** 🛠\u003ca name=\"tech-stack\"\u003e\u003c/a\u003e\n\nThis project was built using a variety of modern technologies and tools:\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cb\u003eFrontend\u003c/b\u003e\u003c/summary\u003e\n  \n  - [React](https://reactjs.org/) - A JavaScript library for building user interfaces.\n  - [Redux Toolkit](https://redux-toolkit.js.org/) - State management for React applications.\n  - [React Router](https://reactrouter.com/) - Routing library for React applications.\n  - [Tailwind CSS](https://tailwindcss.com/) - A utility-first CSS framework.\n  - [Axios](https://axios-http.com/) - A promise-based HTTP client for making requests to your API.\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eBackend\u003c/b\u003e\u003c/summary\u003e\n\n  - Bookstore API: The custom API created for this project.\n    - [API Documentation](https://microverse.notion.site/Bookstore-API-51ea269061f849118c65c0a53e88a739): Documentation for the Bookstore API.\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eVersion Control\u003c/b\u003e\u003c/summary\u003e\n\n  - [Git](https://git-scm.com/) - Distributed version control system.\n  - [GitHub](https://github.com/) - Web-based platform for version control and collaboration.\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003e\u003cb\u003eOther Tools\u003c/b\u003e\u003c/summary\u003e\n\n  - [VS Code](https://code.visualstudio.com/) - A lightweight code editor by Microsoft.\n\u003c/details\u003e\n\nOur project leverages these technologies to deliver a modern and efficient web application.\n\n\n## **Table of Contents**\n\n- [Tech Stack 🛠](#tech-stack)\n- [Getting Started 💻](#getting-started)\n  - [Prerequisites 🧱](#prerequisites)\n  - [Installation 🏗️](#installation)\n  - [Setting Up Environment Variables ⚙️](#setting-up-environment-variables)\n- [Running the Application 📋](#running-the-application)\n- [Project Structure 📗](#project-structure)\n- [Usage 📂](#usage)\n- [Contributing 🤝](#contributing)\n- [Acknowledgements 🙏](#acknowledgments)\n- [License 📝](#license)\n- [Overview 📷](#overview)\n\n## **Getting Started** 💻\u003ca name=\"getting-started\"\u003e\u003c/a\u003e\n\n### **Prerequisites** 🧱\u003ca name=\"prerequisites\"\u003e\u003c/a\u003e\nBefore you begin, ensure you have met the following requirements:\n\n- Node.js: Download and install Node.js from the **[official website](https://nodejs.org/)**.\n- npm (Node Package Manager): npm is included with Node.js. Make sure you have npm installed as well.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n### **Installation** 🏗️\u003ca name=\"installation\"\u003e\u003c/a\u003e\n\n1. Clone the repository to your local machine:\n    ```bash\n    git clone https://github.com/lily4178993/bookstore-cms.git\n    ```\n2. Navigate to the project directory:\n    ```bash\n    cd bookstore-cms\n    ```\n3. Install the project dependencies:\n    ```bash\n    npm install\n    ```\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n### **Setting Up Environment Variables** ⚙️\u003ca name=\"setting-up-environment-variables\"\u003e\u003c/a\u003e\n\nThe Bookstore CMS uses environment variables to configure certain settings. To set up these variables, follow these steps:\n\n1. Create a **`.env`** file in the project's root directory:\n    ```bash\n    touch .env\n    ```\n2. Open the **`.env`** file in a text editor of your choice.\n\n3. Define the following environment variables in the **`.env`** file:\n    ```bash\n    REACT_APP_URL=your_api_url_here\n    REACT_APP_KEY=your_api_key_here\n    ```\n    Replace **`your_api_url_here`** and **`your_api_key_here`** with the appropriate values for your API setup.\n\n4. Save the **`.env`** file.\n\nNow, the project is configured to use your custom environment variables.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## **Running the Application** 📋\u003ca name=\"running-the-application\"\u003e\u003c/a\u003e\n\nTo run the application locally, use the following command:\n\n**1. Fixing JavaScript/JSX Errors**\n\nTo identify and automatically fix JavaScript/JSX errors using ESLint, run the following command:\n  ```bash\n   npx eslint \"**/*.{js,jsx}\" --fix\n  ```\n  ESLint will analyze your code and attempt to fix any issues automatically.\n\n**2. Fixing CSS/SCSS Errors**\n\nTo identify and automatically fix CSS/SCSS errors using Stylelint, run the following command:\n  ```bash\n   npx stylelint \"**/*.{css,scss}\" --fix\n  ```\n  Stylelint will analyze your CSS and SCSS files and attempt to fix any issues automatically.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n**3. Run the Development Server**\n  ```bash\n   npm start\n  ```\n  This command will start the development server, and the application will be accessible at **`http://localhost:3000`** in your web browser.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## **Project Structure** 📗\u003ca name=\"project-structure\"\u003e\u003c/a\u003e\n\nThe project is organized as follows:\n\n- `src/`: Contains the source code of the application.\n  - `components/`: Contains reusable React components.\n  - `redux/`: Manages the application state using Redux.\n  - `assets/`: Stores static assets like images and icons.\n  - `containers/`: Defines the main pages of the application.\n- `App.js`: The root component of the application.\n- `.env`: Configuration file for environment variables.\n- `README.md`: This documentation file.\n- `package.json`: Defines project metadata and dependencies.\n- `public/`: Contains static files like the HTML template and the project's favicon.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## **Usage** 📂\u003ca name=\"usage\"\u003e\u003c/a\u003e\n\n- Navigate to the **[Books](http://localhost:3000/)** page to view, add, and edit books.\n- Use the **[Categories](http://localhost:3000/categories/All)** page to categorize books by genre.\n- Easily manage your book collection using the intuitive user interface.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## **Contributing** 🤝\u003ca name=\"contributing\"\u003e\u003c/a\u003e\n\nContributions are welcome! If you'd like to contribute to the project, please follow these guidelines:\n\n1. Fork the repository.\n2. Create a new branch for your feature or bug fix.\n3. Make your changes and commit them using conventional commits.\n4. Push your branch to your fork.\n5. Open a pull request with a clear title and description.\n\nPlease ensure your code adheres to the project's coding standards and is well-documented.\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## **Acknowledgments** 🙏\u003ca name=\"acknowledgements\"\u003e\u003c/a\u003e\n\nWe would like to express our sincere gratitude to the talented artists and photographers who contributed their work to this project. Their beautiful images have enhanced the visual appeal of our application. Please take a moment to appreciate their creativity and generosity:\n\n- [Deemo](https://rayark.com/g/deemo/)\n- [Icon8](https://icons8.com/)\n\nWe are thankful for their valuable contributions to our project, making it more visually appealing and engaging.\n\n\n## **License** 📝\u003ca name=\"license\"\u003e\u003c/a\u003e\n\nThis project is licensed under the MIT License - see the **[LICENSE](./LICENSE)** file for details.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## **Overview** 📷\u003ca name=\"overview\"\u003e\u003c/a\u003e\n\nHere are some videos from the Bookstore CMS application:\n\n- **Desktop Version**:\n\nhttps://github.com/lily4178993/bookstore-cms/assets/101261047/d84f4716-17c7-41f8-a328-92fd07375a34\n\n\n- **Mobile Version**:\n\nhttps://github.com/lily4178993/bookstore-cms/assets/101261047/14d37177-6b52-40b2-8aa3-9b12d642e72c\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flily4178993%2Fbookstore-cms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flily4178993%2Fbookstore-cms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flily4178993%2Fbookstore-cms/lists"}