{"id":18086118,"url":"https://github.com/3l-d1abl0/apparel-galaxy","last_synced_at":"2026-04-08T16:31:00.197Z","repository":{"id":257874017,"uuid":"858907858","full_name":"3l-d1abl0/apparel-galaxy","owner":"3l-d1abl0","description":"A Simple E-Commerce Store based on Microservices","archived":false,"fork":false,"pushed_at":"2025-02-14T16:12:21.000Z","size":405,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T00:43:21.030Z","etag":null,"topics":["docker","e-commerce","ecs","ecs-fargate","fastapi","golang","jest","microservices","mongodb","pytest"],"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/3l-d1abl0.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-09-17T18:33:07.000Z","updated_at":"2025-02-14T16:12:25.000Z","dependencies_parsed_at":"2024-10-16T20:58:45.999Z","dependency_job_id":"3e20502e-3524-4d78-a046-1d4f384de3ce","html_url":"https://github.com/3l-d1abl0/apparel-galaxy","commit_stats":null,"previous_names":["3l-d1abl0/apparel-galaxy"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/3l-d1abl0/apparel-galaxy","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3l-d1abl0%2Fapparel-galaxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3l-d1abl0%2Fapparel-galaxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3l-d1abl0%2Fapparel-galaxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3l-d1abl0%2Fapparel-galaxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/3l-d1abl0","download_url":"https://codeload.github.com/3l-d1abl0/apparel-galaxy/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/3l-d1abl0%2Fapparel-galaxy/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31564772,"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":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: 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","e-commerce","ecs","ecs-fargate","fastapi","golang","jest","microservices","mongodb","pytest"],"created_at":"2024-10-31T16:06:37.392Z","updated_at":"2026-04-08T16:31:00.168Z","avatar_url":"https://github.com/3l-d1abl0.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Apparel Galaxy\n\nApparel Galaxy is a simple e-commerce APIs built using microservice Architecture. It queries apparel stored over MongoDB Cloud.\nUser can create account and browser products and Order them.\nCan be deployed over localhost or cloud using containers (Docker/Kubernetes)\nI have personally deployed it via AWS Fargate on ECS Clusters.\n\nFollowing Diagram is just an illustration on AWS ECS Architecture:\n![ECS Architecture](https://github.com/3l-d1abl0/apparel-galaxy/blob/dad542c170363f730902dc4903449adb67b1dbef/images/overview-fargate.png)\n\nImage Source [AWS](https://docs.aws.amazon.com/images/AmazonECS/latest/developerguide/images/overview-fargate.png)\n\n\n\n**Apparel Galaxy**'s overall architecture when deployed on ECS would look like:\n![Apprel-Galaxy](https://github.com/3l-d1abl0/apparel-galaxy/blob/b169be13d6937b4ecd9e61523b39179380987aff/images/apparel-galaxy-service.drawio.png)\n\nThe diagram only shows some of the services available.\n\nFollowing is the breakdown of the the Services:\n### 1. Auth Service\nAuthentication Service handles the authentication and authorization of user over the e-commerce platform. It uses Json Web Token (JWT) grant identity to user once they are registered to the Platform. It exposes the following endpoints:\n\n- GET /ping\n\treturns a 'pong' from the service\n- POST /register\n\tRegisters the user onto the Platform.\n- POST /login\n\tlogs the valid user onto the System. Returns a token in return.\n- POST /onboard\n\tRegisters a user onto the Platform as a Admin\n\n\u003e More details on the AuthService README\n\t\n\n### 2. Product Service\nProduct Service handles all the request handling the queries for Products. It exposes the following endpoints:\n\n- GET /PING\n\treturns a 'pong' from the service\n- GET /products/search\n\tsearch for products with a specific query\n- GET /products\n\tbrowse products\n- GET /products/\u003c id\u003e\n\tget a particular product with an ID\n\n\u003e More details on the ProductService README\n\n### 3. Order Service\nOrder Service is responsible for serving order details for users and handle order request. Verification of order after failure/success of Payment.\n\n- GET /ping\n\treturns a 'pong' from the service\n- GET /orders\n\tlists the past orders for a user\n- GET /orderFailure\n\thandles the process when an payment fails\n- GET /orderSuccess\n\thandles the process when the payment fails\n\t\n\u003e More details on the OrderService README\n\n### 4. Cart Service\nCart Service is responsible for handling user's cart operation and checking out the cart for order.\n\n- GET /ping\n\treturns a 'pong' from the service\n- GET /cart\n\tfetches the cart content for the users\n- POST /cart\n\thandles addition of items to the cart.\n- DELETE /cart\n\thandles the deletion of items from cart or deletion of entire Cart.\n\t\n\u003e More details on the CartService README\n\n## Deployment 🚀🚀🚀\n\n- Refer to the [Deployment Docs](https://github.com/3l-d1abl0/apparel-galaxy/tree/48e86c04ff3d908c8ea8d89de8d3423318cbde89/deployment) for deployment on localhost, docker or AWS Elastic Container Service (ECS)\n\n## Built Using\n\n- Python v3.12.4\n- FastAPI v0.114\n- NodeJS v21.7.3\n- Express v4.21.0\n- Typescript v5.6.2\n- Golang v1.22.0\n- Gin-Goinc v1.10.0\n- MongoDB Cloud\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F3l-d1abl0%2Fapparel-galaxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F3l-d1abl0%2Fapparel-galaxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F3l-d1abl0%2Fapparel-galaxy/lists"}