{"id":22253295,"url":"https://github.com/willacosta/ng-shop-workspace","last_synced_at":"2025-10-13T11:31:32.730Z","repository":{"id":195368789,"uuid":"692532638","full_name":"WillACosta/ng-shop-workspace","owner":"WillACosta","description":"Angular Micro-frontend application which uses NGXS for state management, and facade pattern.","archived":false,"fork":false,"pushed_at":"2024-09-03T21:54:49.000Z","size":3838,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-06T09:22:37.914Z","etag":null,"topics":["ai","ai-agents","angular","design-patterns","facade","frontend","mfe","micro-frontend","module-federation","ngxs","recommendation-system","rxjs","stackspot-ai"],"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/WillACosta.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-16T19:13:13.000Z","updated_at":"2024-12-05T22:19:40.000Z","dependencies_parsed_at":"2023-09-17T17:39:10.478Z","dependency_job_id":"4465eb9a-bce0-4c38-8b62-7296b22320a6","html_url":"https://github.com/WillACosta/ng-shop-workspace","commit_stats":null,"previous_names":["willacosta/ng-shop-workspace"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/WillACosta/ng-shop-workspace","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillACosta%2Fng-shop-workspace","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillACosta%2Fng-shop-workspace/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillACosta%2Fng-shop-workspace/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillACosta%2Fng-shop-workspace/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WillACosta","download_url":"https://codeload.github.com/WillACosta/ng-shop-workspace/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WillACosta%2Fng-shop-workspace/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279014793,"owners_count":26085594,"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-13T02:00:06.723Z","response_time":61,"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":["ai","ai-agents","angular","design-patterns","facade","frontend","mfe","micro-frontend","module-federation","ngxs","recommendation-system","rxjs","stackspot-ai"],"created_at":"2024-12-03T07:17:43.310Z","updated_at":"2025-10-13T11:31:31.507Z","avatar_url":"https://github.com/WillACosta.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"### @ng-shop-workspace\n\nA micro-frontend application powered by NX and Module Federation Plugin, this is a simple plant shop, that have features such as recommendation system using AI agents, authentication, cart shop and state management with redux pattern.\n\n\u003ccenter\u003e\n  \u003cimg src=\"docs/images/screenshot.png\" alt=\"screenshot\" style=\"margin-top: 35px\"/\u003e\n\u003c/center\u003e\n\n### Table of contents\n\n- [Project Architecture](#project-architecture)\n- [Technical Resources](#technical-resources)\n- [Getting Started](#getting-started)\n\n### Project Architecture\n\nThis project uses [Facade Design Pattern](https://refactoring.guru/design-patterns/facade), to simplify state management and abstract Redux Pattern APIs (via NgXS), with that concept the view layer don't have to know anything about implementation details and how state works under the hood.\n\nAll app logic is placed inside the correspondent `*State` class, with that concept we follow the guidelines for [single responsibility](https://www.digitalocean.com/community/conceptual-articles/s-o-l-i-d-the-first-five-principles-of-object-oriented-design), each layer is responsible for one thing.\n\nSee in the image below all the app's diagram flow:\n\n\u003cimg src=\"docs/images/app-diagram.png\" /\u003e\n\n### Technical Resources\n\n- Recommendation system using AI agents ([StackSpot AI](https://www.stackspot.com/en/))\n- Authentication flow with [Reqres.in](https://reqres.in/) integration\n- Mono-repo managed by [NX CLI](https://nx.dev/)\n- Micro-frontend approach using [Module Federation](https://webpack.js.org/concepts/module-federation/)\n- State Management with [NGXS library](https://www.ngxs.io/)\n- [Tailwind CSS](https://tailwindcss.com/) for create beautifully, responsive and accessible UI\n- [Angular v16.2 | Node 16.x](https://angular.io/) for the micro-frontend apps\n\n### Getting Started\n\n1. Clone this repository\n\n```bash\ngit clone https://github.com/WillACosta/ng-shop-workspace\n```\n\n2. Run the following command\n\n```bash\npnpm install \u0026\u0026 pnpm bootstrap\n```\n\nBy executing this command, all the required dependencies will be installed, and the application will be served on `localhost:4200`.\n\n\u003e Note: Go to the `apps/dashboard/src/environments` and copy the content of `environment.example.ts` and fill out with your own values. -- [get here](https://www.stackspot.com/en/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillacosta%2Fng-shop-workspace","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwillacosta%2Fng-shop-workspace","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwillacosta%2Fng-shop-workspace/lists"}