{"id":19955758,"url":"https://github.com/saiflotfi/e-commerce-api","last_synced_at":"2026-05-08T02:17:33.381Z","repository":{"id":194497566,"uuid":"690951524","full_name":"SaifLotfi/E-Commerce-API","owner":"SaifLotfi","description":"E-Commerce API - using Nodejs \u0026 MongoDB - REST API","archived":false,"fork":false,"pushed_at":"2023-09-13T08:20:33.000Z","size":76,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-01T15:43:23.883Z","etag":null,"topics":["mongodb","nodejs","rest-api"],"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/SaifLotfi.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}},"created_at":"2023-09-13T07:58:38.000Z","updated_at":"2023-09-13T08:00:41.000Z","dependencies_parsed_at":null,"dependency_job_id":"1bfc7d84-5edc-40c0-b224-2d5f7fa5ab3c","html_url":"https://github.com/SaifLotfi/E-Commerce-API","commit_stats":null,"previous_names":["saiflotfi/e-commerce-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SaifLotfi/E-Commerce-API","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaifLotfi%2FE-Commerce-API","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaifLotfi%2FE-Commerce-API/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaifLotfi%2FE-Commerce-API/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaifLotfi%2FE-Commerce-API/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SaifLotfi","download_url":"https://codeload.github.com/SaifLotfi/E-Commerce-API/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SaifLotfi%2FE-Commerce-API/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32763529,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"online","status_checked_at":"2026-05-08T02:00:05.879Z","response_time":54,"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":["mongodb","nodejs","rest-api"],"created_at":"2024-11-13T01:28:42.761Z","updated_at":"2026-05-08T02:17:33.365Z","avatar_url":"https://github.com/SaifLotfi.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n\u003ch1 align=\"center\"\u003eE-Commerce API\u003c/h1\u003e\n\n\n## Overview\n\nThis Is my implementation for the backend part of the [E-commerce MERN Stack course by BradTraversy](https://github.com/bradtraversy/proshop-v2)\n\n## Features\n\n- **Product Management**: Create, update, and delete products with ease. Organize products into categories and manage inventory.\n- **User Accounts**: Allow users to create accounts, view order history, and manage their profiles.\n- **Shopping Cart**: Implement a shopping cart system for users to add and remove items.\n- **Order Processing**: Manage orders, track shipments, and handle payment processing.\n- **Reviews and Ratings**: Enable customers to leave product reviews and ratings.\n- **Search and Filters**: Implement search functionality and filtering options for products.\n- **Admin Dashboard**: Provide an admin dashboard for easy store management.\n- **Security**: Implement authentication and authorization mechanisms to protect sensitive data.\n- **Payment Integration**: Support various payment gateways for seamless transactions.\n\n\n### Installation\n\n1. Clone this repository to your local machine:\n\n   ```bash\n   git clone https://github.com/SaifLotfi/E-Commerce-API.git\n   ```\n\n2. Navigate to the project directory:\n\n   ```bash\n   cd E-Commerce-API\n   ```\n\n3. Install the project dependencies:\n\n   ```bash\n   npm install\n   ```\n\n### Configuration\n\n1. Create a `.env` file in the project root:\n\n   ```bash\n   touch .env\n   ```\n\n2. Configure the `.env` file with your environment-specific settings. You can use the provided `.env.example` as a template.\n\n### Running the Server\n\nTo start the API server, use the following command:\n\n```bash\nnpm start\n```\n\nThe API will be accessible locally at `http://localhost:5000`.\n\n## Usage\n\n### Authentication\n\nE-Commerce API uses token-based authentication. To access protected endpoints, users need to obtain an authentication token. Here's how it works:\n\n- **Sign Up**: Users can create a new account by sending a `POST` request to `/api/auth/signup`.\n\n- **Log In**: After signing up, users can log in by sending a `POST` request to `/api/auth/login`. They will receive an authentication token in response.\n\n- **Authorization**: To access protected endpoints, include the obtained token in the `Authorization` header of your requests.\n\n### API Endpoints\n\nE-Commerce API provides a variety of endpoints to manage your e-commerce platform. Some of the main API endpoints include:\n\n#### User Endpoints\n\n- **Get User Profile**: `GET /api/users/profile`\n- **Update User Profile**: `PUT /api/users/profile`\n- **Register User**: `POST /api/users`\n- **Auth User \u0026 Get Token**: `POST /api/users/login`\n- **Get all Users**: `GET /api/users`\n\n#### Product Endpoints\n\n- **Fetch all Products**: `GET /api/products`\n- **Fetch single Product**: `GET /api/products/:id`\n- **Delete a Product**: `DELETE /api/products/:id`\n- **Create a Product**: `POST /api/products`\n- **Update a Product**: `PUT /api/products/:id`\n\n#### Upload Endpoints\n\n- **Upload Image**: `POST /api/upload`\n\n\n\nFor a complete list of available endpoints and their usage, please refer to the API documentation or the code.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaiflotfi%2Fe-commerce-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaiflotfi%2Fe-commerce-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaiflotfi%2Fe-commerce-api/lists"}