{"id":18165550,"url":"https://github.com/prasanthvijayy/product-management-system","last_synced_at":"2026-04-11T11:01:59.687Z","repository":{"id":257029394,"uuid":"857038125","full_name":"PrasanthVijayy/product-management-system","owner":"PrasanthVijayy","description":"A scalable and optimized product management system with REST APIs, using ExpressJS, Sequelize (MYSQL), Redis, , Jest for building unit \u0026 Integration testing.","archived":false,"fork":false,"pushed_at":"2025-08-11T22:08:12.000Z","size":96,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-08-12T00:16:12.804Z","etag":null,"topics":["docker-compose","expressjs","graphql","jest-reporter","jest-tests","nodejs","redis","rest-api","sequelize-orm","sql"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PrasanthVijayy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null}},"created_at":"2024-09-13T17:17:43.000Z","updated_at":"2025-06-05T08:43:34.000Z","dependencies_parsed_at":"2024-09-14T12:35:38.918Z","dependency_job_id":"34508bb9-792b-478f-ad43-a91cded8e7e2","html_url":"https://github.com/PrasanthVijayy/product-management-system","commit_stats":null,"previous_names":["prasanthvijayy/product-management-system"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/PrasanthVijayy/product-management-system","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PrasanthVijayy%2Fproduct-management-system","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PrasanthVijayy%2Fproduct-management-system/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PrasanthVijayy%2Fproduct-management-system/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PrasanthVijayy%2Fproduct-management-system/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PrasanthVijayy","download_url":"https://codeload.github.com/PrasanthVijayy/product-management-system/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PrasanthVijayy%2Fproduct-management-system/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31677819,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-11T08:18:19.405Z","status":"ssl_error","status_checked_at":"2026-04-11T08:17:08.892Z","response_time":54,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["docker-compose","expressjs","graphql","jest-reporter","jest-tests","nodejs","redis","rest-api","sequelize-orm","sql"],"created_at":"2024-11-02T12:07:43.968Z","updated_at":"2026-04-11T11:01:59.656Z","avatar_url":"https://github.com/PrasanthVijayy.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Product Management System\n\n## Overview\n\nThe Product Management System (PMS) is a robust application designed to manage products and product categories through both REST and GraphQL APIs. It features comprehensive support for CRUD operations, advanced filtering, and sorting capabilities. Leveraging Sequelize as an ORM for MySQL, the application ensures efficient database interactions.\n\nTo enhance performance and scalability, the system incorporates Redis for caching, which significantly improves data retrieval times and reduces load on the database. The application is designed with scalability and security in mind, making it suitable for high-demand environments.\n\n## Table of Contents\n\n- [Running the Application](#running-the-application)\n  - [Locally](#locally)\n  - [With Docker](#with-docker)\n- [Running Tests](#running-tests)\n- [API Documentation](#api-documentation)\n- [API Collections](/API/API%20postmanCollection.json)\n\n## Running the Application\n\n### Locally\n\n1. **Clone the Repository**:\n\n   ```bash\n   git clone https://github.com/PrasanthVijayy/product-management-system.git\n   ```\n\n2. **Install Dependencies**:\n\n   ```bash\n   npm install\n   ```\n\n3. **Create a `.env` File**:\n   Copy the example `.env` file and adjust the configuration as needed:\n\n   ```bash\n   cp .env.example .env\n   ```\n\n4. **Run the Application**:\n\n   ```bash\n   npm start\n   ```\n\n   The application will be available at `http://localhost:4001`.\n\n### With Docker\n\n1. **Build and Start Containers**:\n   Ensure Docker and Docker Compose are installed, then run:\n\n   ```bash\n   docker-compose up --build\n   ```\n\n   This command builds the Docker images and starts the containers. The application will be available at `http://localhost:4001`.\n\n2. **Environment Variables**:\n   Make sure your `.env` file is correctly configured and located in the root directory of your project. Docker will automatically load these variables.\n\n## Running Tests\n\n1. **Unit and Integration Tests**:\n   Folder for [Unit Test](/tests/restAPI/unitTesting/)\n   Folder for [Integration Test](/tests/restAPI/intergration/)\n\n   Run the following command to execute the test suite:\n\n   ```bash\n   npm test\n   ```\n\n   This will run all unit and integration tests defined in the `test` directory using Jest.\n\n2. **Test Status**:\n   To view the test status and results in a more readable format, an HTML report is generated after test execution. You can open the generated HTML file to see a detailed view of the test results.\n   The HTML report is usually located in the `test/reports.html` file, and you can open it with any web browser.\n\n## API Documentation\n\n- **API Documentation**: The API documentation is available at [http://localhost:4001/api-docs](http://localhost:4001/api-docs). This link provides detailed information about the API endpoints, request parameters, and response formats.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprasanthvijayy%2Fproduct-management-system","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprasanthvijayy%2Fproduct-management-system","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprasanthvijayy%2Fproduct-management-system/lists"}