{"id":25390068,"url":"https://github.com/h1b0b0/eclatshop","last_synced_at":"2025-04-09T22:52:53.112Z","repository":{"id":254124356,"uuid":"845571610","full_name":"H1B0B0/Eclatshop","owner":"H1B0B0","description":"Eclat Shop is an e-commerce site for selling computer components, built with Symfony, React (TypeScript), and Docker.","archived":false,"fork":false,"pushed_at":"2024-08-21T14:49:15.000Z","size":11357,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-09T22:52:48.972Z","etag":null,"topics":["e-commerce","epitech","php","symphony","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/H1B0B0.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}},"created_at":"2024-08-21T14:01:38.000Z","updated_at":"2025-01-14T15:49:27.000Z","dependencies_parsed_at":"2024-08-21T15:37:39.916Z","dependency_job_id":null,"html_url":"https://github.com/H1B0B0/Eclatshop","commit_stats":null,"previous_names":["h1b0b0/eclatshop"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/H1B0B0%2FEclatshop","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/H1B0B0%2FEclatshop/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/H1B0B0%2FEclatshop/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/H1B0B0%2FEclatshop/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/H1B0B0","download_url":"https://codeload.github.com/H1B0B0/Eclatshop/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248125639,"owners_count":21051766,"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","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":["e-commerce","epitech","php","symphony","typescript"],"created_at":"2025-02-15T14:35:11.197Z","updated_at":"2025-04-09T22:52:53.091Z","avatar_url":"https://github.com/H1B0B0.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Eclat Shop E-Commerce\n\n## Introduction\n\nEclat Shop is a powerful website designed for e-commerce platforms, particularly focused on the sale of computer components. It leverages the Symfony framework for backend operations, React with TypeScript for the frontend, and Docker for efficient deployment.\n\n## Getting Started\n\n### Prerequisites\n\nBefore you begin, ensure you have the following installed:\n\n- **Docker**: For creating and managing containers.\n\n### Clone the project:\n\nTo clone the repository and start setting up the project, use the following command in your terminal:\n\nStep 1 : Clone the repository\n`git clone https://repository.git`\n\nStep 2: Set up the .env configurations. Add one .env file at the root directory and another within the app directory.\n`cd app/`\n\nStep 2: Launch Docker and enter the following command.\n`docker compose up -d --build`\n\n## API Reference\n\n### Users\n\n- **Register a User**: `POST /api/register` - Creates a new user account.\n- **User Login**: `POST /api/login` - Authenticates a user and returns an authorization token.\n\n### Products\n\n- **List Products**: `GET /api/products` - Retrieves all products.\n- **Single Product**: `GET /api/products/{productId}` - Fetches details of a specific product.\n- **Add Product**: `POST /api/products` - Adds a new product to the system (Authentication required).\n- **Update Product**: `PUT /api/products/{productId}` - Updates an existing product (Authentication required).\n- **Delete Product**: `DELETE /api/products/{productId}` - Removes a product from the system (Authentication required).\n\n### Cart\n\n- **Add to Cart**: `POST /api/carts/{productId}` - Adds a product to the user's shopping cart (Authentication required).\n- **Remove from Cart**: `DELETE /api/carts/{productId}` - Removes a product from the cart (Authentication required).\n- **View Cart**: `GET /api/carts` - Displays all items in the shopping cart (Authentication required).\n- **Validate Cart**: `POST /api/carts/validate` - Converts the cart into an order (Authentication required).\n\n### Orders\n\n- **View Orders**: `GET /api/orders` - Retrieves all orders associated with the current user (Authentication required).\n- **Order Details**: `GET /api/orders/{orderId}` - Provides detailed information about a specific order (Authentication required).\n\n## Deployment\n\nDeployment is handled using Docker, which simplifies the process into manageable services:\n\n- **PHP Service**: Manages the PHP environment.\n- **Web Server Service**: Uses Nginx to serve the application.\n- **Database Service**: Runs PostgreSQL for data management.\n\nUse Docker Compose to orchestrate these services. This script will set up each service in its container, ensuring they are interconnected and configured correctly.\n\n## Contributors\n\n- **Etienne Mentrel**\n- **Loïc Bravo**\n- **Sébastien OGE**\n\n## Preview\n\n### Home\n\n![home.png](images/home.png)\n\n### Shop\n\nhttps://drive.google.com/file/d/1PZyjjLWGN1XGjszZ-jO77o3HCETA23lS/view?usp=sharing\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fh1b0b0%2Feclatshop","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fh1b0b0%2Feclatshop","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fh1b0b0%2Feclatshop/lists"}