{"id":18820659,"url":"https://github.com/marcin-niewczas/myshop-angular-client","last_synced_at":"2026-02-12T22:33:16.459Z","repository":{"id":248155744,"uuid":"827915579","full_name":"marcin-niewczas/MyShop-Angular-Client","owner":"marcin-niewczas","description":"myShop E-Commerce \u0026 CMS Client | Angular App","archived":false,"fork":false,"pushed_at":"2025-03-05T17:15:38.000Z","size":26359,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-02T20:46:25.346Z","etag":null,"topics":["angular","angular-material","angular-pwa","angular-signals","chartjs","cms","e-commerce","jwt-authentication","management-panel","material-ui","product-variants","pwa","refresh-token","responsive-web-design","rwd","rxjs","sass-scss","signalr-client","single-page-app","spa"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marcin-niewczas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-07-12T16:52:12.000Z","updated_at":"2025-03-05T17:15:43.000Z","dependencies_parsed_at":"2025-09-02T20:43:07.861Z","dependency_job_id":null,"html_url":"https://github.com/marcin-niewczas/MyShop-Angular-Client","commit_stats":null,"previous_names":["marcin-niewczas/myshop-angular-client"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/marcin-niewczas/MyShop-Angular-Client","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcin-niewczas%2FMyShop-Angular-Client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcin-niewczas%2FMyShop-Angular-Client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcin-niewczas%2FMyShop-Angular-Client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcin-niewczas%2FMyShop-Angular-Client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marcin-niewczas","download_url":"https://codeload.github.com/marcin-niewczas/MyShop-Angular-Client/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marcin-niewczas%2FMyShop-Angular-Client/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29383970,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-12T22:07:52.078Z","status":"ssl_error","status_checked_at":"2026-02-12T22:07:49.026Z","response_time":55,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":["angular","angular-material","angular-pwa","angular-signals","chartjs","cms","e-commerce","jwt-authentication","management-panel","material-ui","product-variants","pwa","refresh-token","responsive-web-design","rwd","rxjs","sass-scss","signalr-client","single-page-app","spa"],"created_at":"2024-11-08T00:29:24.706Z","updated_at":"2026-02-12T22:33:16.445Z","avatar_url":"https://github.com/marcin-niewczas.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e \n  \u003ch1\u003emyShop Angular Client\u003c/h3\u003e\n  \u003cimg src=\"./img/ecommerce-main-page.png\" alt=\"E-Commerce Main Page myShop Angular Client\" width=\"412px\" /\u003e\n  \u003cimg src=\"./img/ecommerce-products-list-light-theme.png\" alt=\"E-Commerce Products List myShop Angular Client\" width=\"412px\" /\u003e\n  \u003cimg src=\"./img/ecommerce-product-2.png\" alt=\"E-Commerce Product myShop Angular Client\" width=\"412px\" /\u003e\n  \u003cimg src=\"./img/mp-dashboard-light-theme.png\" alt=\"Management Panel Dashboard myShop Angular Client\" width=\"412px\" /\u003e\n  \u003cimg src=\"./img/account-settings.png\" alt=\"Account Settings myShop Angular Client\" width=\"412px\" /\u003e\n  \u003cimg src=\"./img/mp-product-light-theme.png\" alt=\"Management Panel Product myShop Angular Client\" width=\"412px\" /\u003e\n\u003c/div\u003e\n\u003cbr /\u003e\n\u003cbr /\u003e\n\n## Table of Contents\n1. **[About The Project](#about-the-project)**\n    - **[Topics](#the-application-covers-the-following-topics)**\n    - **[Built with](#built-with)**\n2. **[Screenshots](#screenshots)**\n3. **[Related Projects](#related-projects)**\n4. **[Getting Started](#getting-started)**\n5. **[License](#license)**\n\n## About The Project\nThe main goal of **myShop Angular Client** project was to learn how to create modern, reactive, responsive Single Page Application, which can communicate with a **[myShop API](https://github.com/marcin-niewczas/MyShop-API)**. \n\n### The application covers the following topics:\n- Angular Router\n- Angular Forms/Reactive Forms (built-in and custom validators)\n- Built-in and custom Angular Pipes, Directives\n- Custom reusable components\n- Angular Material Components\n- Integration light/dark themes with Angular Material\n- Angular Resolvers, Guards, Interceptors\n- Angular Services (Dependency Injection)\n- Angular Animations\n- Managing User Session using JWT and refresh tokens\n- TypeScript\n- RxJS\n- Angular Signals\n- Angular Standalone Components\n- Diffrent types of paginations (e.g. Query Params, Infinite Scroll)\n- Working with external packages\n- Angular Service Worker (Progressive Web Application)\n- Sass (Variables, Mixins)\n- RWD (Responsive Web Design)\n- Working with REST API and SignalR Hub\n- Working with charts\n\n### Built with\n* Angular 18\n* Angular Material\n* Angular Service Worker (PWA)\n* Angular Animations\n* Sass/SCSS\n* Microsoft SignalR\n* ngx-toastr\n* ngx-infinite-scroll\n* Swiper\n* ng2-charts (chart.js + chartjs-plugin-datalabels)\n* Angular Fontawesome\n* hammer.js\n\n## Screenshots\n\u003e [!NOTE]\n\u003e Screenshots **myShop Angular Client** can be found **[here](./SCREENSHOTS.md)**.\n\n## Related Projects\n* **[myShop API](https://github.com/marcin-niewczas/MyShop-API)**\n* **[myShop Pay](https://github.com/marcin-niewczas/MyShop-Pay)**\n\n## Getting Started\n\u003e [!IMPORTANT]\n\u003e For fully functionality, the **myShop Angular Client** project must have **[related projects](#related-projects)** running.\n\u003e \n\u003e Full instruction for starting **myShop** projects is **[here](https://github.com/marcin-niewczas/MyShop-API#launch-myshop-projects)**.\n1. Clone repository\n   ```sh\n   git clone https://github.com/marcin-niewczas/MyShop-Angular-Client.git\n   ```\n2. In root folder of repository install NPM packages\n   ```sh\n   npm install\n   ```\n3. Run application\n   ```sh\n   ng serve\n   ```\n\n## License\nDistributed under the **MIT License**. See **[LICENSE](./LICENSE)** for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcin-niewczas%2Fmyshop-angular-client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarcin-niewczas%2Fmyshop-angular-client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarcin-niewczas%2Fmyshop-angular-client/lists"}