{"id":16395882,"url":"https://github.com/relliv/nx-ng-tw-starter-testa","last_synced_at":"2025-02-23T04:32:44.688Z","repository":{"id":105918677,"uuid":"562601649","full_name":"relliv/nx-ng-tw-starter-testa","owner":"relliv","description":null,"archived":false,"fork":false,"pushed_at":"2022-11-24T00:48:01.000Z","size":2275,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-04T07:58:06.199Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/relliv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null}},"created_at":"2022-11-06T20:49:44.000Z","updated_at":"2022-11-24T00:57:42.000Z","dependencies_parsed_at":null,"dependency_job_id":"0f7f40ac-abbf-410a-ac79-05be79cd65a9","html_url":"https://github.com/relliv/nx-ng-tw-starter-testa","commit_stats":null,"previous_names":["relliv/nx-ng-tw-starter-testa"],"tags_count":0,"template":true,"template_full_name":"rfprod/nx-ng-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relliv%2Fnx-ng-tw-starter-testa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relliv%2Fnx-ng-tw-starter-testa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relliv%2Fnx-ng-tw-starter-testa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relliv%2Fnx-ng-tw-starter-testa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/relliv","download_url":"https://codeload.github.com/relliv/nx-ng-tw-starter-testa/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240271523,"owners_count":19774859,"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":[],"created_at":"2024-10-11T05:05:52.437Z","updated_at":"2025-02-23T04:32:44.656Z","avatar_url":"https://github.com/relliv.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Nx Ng Starter\n\n[Nx](https://nx.dev/) + [Angular](https://angular.io/) + [NestJS](https://nestjs.com/) mono-repository starter with workflow automation.\n\n[![Commitizen friendly](https://img.shields.io/badge/commitizen-friendly-brightgreen.svg)](http://commitizen.github.io/cz-cli/)\n\n## Workflows\n\n|                                                                              | Trigger                             | Badge                                                                                                                                                                                                    |\n| ---------------------------------------------------------------------------- | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| [:information_source:](# 'Source code security scanning.')                   | Manual, Scheduled (weekly)          | [![codeql-analysis](https://github.com/rfprod/nx-ng-starter/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/rfprod/nx-ng-starter/actions/workflows/codeql-analysis.yml)             |\n| [:information_source:](# 'Containerization.')                                | Manual                              | [![build-docker](https://github.com/rfprod/nx-ng-starter/actions/workflows/build-docker.yml/badge.svg)](https://github.com/rfprod/nx-ng-starter/actions/workflows/build-docker.yml)                      |\n| [:information_source:](# 'Publish npm packages.')                            | PR merge event (destination: trunk) | [![publish-packages](https://github.com/rfprod/nx-ng-starter/actions/workflows/publish-packages.yml/badge.svg)](https://github.com/rfprod/nx-ng-starter/actions/workflows/publish-packages.yml)          |\n| [:information_source:](# 'User acceptance testing.')                         | Manual                              | [![test-e2e](https://github.com/rfprod/nx-ng-starter/actions/workflows/test-e2e.yml/badge.svg)](https://github.com/rfprod/nx-ng-starter/actions/workflows/test-e2e.yml)                                  |\n| [:information_source:](# 'Full testing, deliverables build and deployment.') | PR merge event (destination: trunk) | [![trunk](https://github.com/rfprod/nx-ng-starter/actions/workflows/trunk.yml/badge.svg)](https://github.com/rfprod/nx-ng-starter/actions/workflows/trunk.yml)                                           |\n| [:information_source:](# 'Code ownership validation.')                       | Scheduled (weekly)                  | [![validate-codeowners](https://github.com/rfprod/nx-ng-starter/actions/workflows/validate-codeowners.yml/badge.svg)](https://github.com/rfprod/nx-ng-starter/actions/workflows/validate-codeowners.yml) |\n| [:information_source:](# 'Quality gates: pull request validation.')          | PR open event (destination: trunk)  | [![validate-pr](https://github.com/rfprod/nx-ng-starter/actions/workflows/validate-pr.yml/badge.svg)](https://github.com/rfprod/nx-ng-starter/actions/workflows/validate-pr.yml)                         |\n\n## Requirements\n\nIn order to run own copy of the project one must fulfill the following requirements.\n\n### Supported operating systems\n\n- :trophy: [Debian based Linux](https://en.wikipedia.org/wiki/List_of_Linux_distributions#Debian-based) - `recommended`\n  - check out [this dev setup instructions](https://github.com/rfprod/wdsdu) to facilitate setting up the dev environment;\n  - given that the dev environment is set up, the command `yarn install:all:linux` should install everything needed to work with the project;\n- :ok: [OSX](https://en.wikipedia.org/wiki/MacOS) - `should work due to the similarities with Linux`\n  - one will have to figure out oneself how to set up the dev environment;\n  - given that the dev environment is set up, the command `yarn install:all:osx` should install everything needed to work with the project;\n  - the automation scripts support the OS with relatively high probability, but it has not been tested;\n- 🤷 [Windows](https://en.wikipedia.org/wiki/Microsoft_Windows) - `should work, but no guarantees`\n  - one will have to figure out oneself how to set up the dev environment;\n  - one will have to figure out oneself how to install `protolint`, [see available installation options](https://github.com/yoheimuta/protolint#installation);\n  - given that the dev environment is set up, the following commands should be used to install `shellcheck` via PowerShell;\n    ```powershell\n    iwr -useb get.scoop.sh | iex\n    scoop install shellcheck\n    ```\n  - recommended shell: [Git for Windows](https://gitforwindows.org/) \u003e `Git BASH`.\n\n### Core dependencies\n\n- [Bash 5](https://www.gnu.org/software/bash/)\n- [Node.js](https://nodejs.org/)\n- [Yarn](https://yarnpkg.com/)\n- [Git](https://git-scm.com/)\n\n### Preferred package manager\n\n- [Yarn](https://www.npmjs.com/package/yarn) - preferred package manager for dependencies installation in the project root.\n- [npm](https://www.npmjs.com/package/npm) - preferred package manager for dependencies installation in the `functions` folder.\n\n## Package scripts reference\n\nThe project has lots of package scripts, check it in the `package.json` located in the project root, or use the following command (see terminal output for usage tips)\n\n```bash\nyarn workspace:help\n```\n\n## Committing changes to repo\n\nUsing [commitizen cli](https://github.com/commitizen/cz-cli) is mandatory.\n\nProvided all dependencies are installed, and [commitizen cli is installed as a global dependency](https://github.com/commitizen/cz-cli#conventional-commit-messages-as-a-global-utility), this command must be used.\n\n```bash\ngit cz\n```\n\n## GitBook documentation\n\nThe GitBook documentation is generated based on this GitHub repo.\n\n- [GitBook documentation](https://rfprod.gitbook.io/nx-ng-starter/)\n\n## Firebase deployments\n\nApplication deployments and autogenerated engineering documentation.\n\n- [Client](https://nx-ng-starter.web.app)\n- [Elements](https://nx-ng-starter-elements.web.app)\n- [Documentation](https://nx-ng-starter-documentation.web.app)\n  - [Compodoc](https://nx-ng-starter-documentation.web.app/assets/compodoc/index.html)\n  - [Storybook](https://nx-ng-starter-documentation.web.app/assets/storybook/index.html)\n  - [Unit test reports](https://nx-ng-starter-documentation.web.app/assets/coverage/index.html)\n  - [E2E test reports](https://nx-ng-starter-documentation.web.app/assets/cypress/index.html)\n  - [Changelogs](https://nx-ng-starter-documentation.web.app/assets/changelog/index.html)\n\n## Workspace generators\n\n### Generate a library\n\n#### `feature` library\n\n```bash\nnpx nx workspace-schematic client-feature client-\u003cfeature-name\u003e --tags=scope:client-\u003cfeature-name\u003e,type:feature\n```\n\n#### `ui` library\n\n```bash\nnpx nx workspace-schematic client-ui client-ui-\u003cfeature-name\u003e --tags=scope:client-ui-\u003cfeature-name\u003e,type:ui\n```\n\n#### `data-access` library\n\n```bash\nnpx nx workspace-schematic client-store client-store-\u003cfeature-name\u003e --tags=scope:client-store-\u003cfeature-name\u003e,type:data-access\n```\n\n#### `util` library\n\n```bash\nnpx nx workspace-schematic client-util client-util-\u003cfeature-name\u003e --tags=scope:client-util-\u003cfeature-name\u003e,type:util\n```\n\n## General Tooling\n\nThis project was generated using [Nx](https://nx.dev).\n\n\u003cp align=\"center\"\u003e\u003cimg src=\"https://raw.githubusercontent.com/nrwl/nx/master/nx-logo.png\" width=\"350\"\u003e\u003c/p\u003e\n\n🔎 **Nx is a set of Angular CLI power-ups for modern development.**\n\n### Quick Start \u0026 Documentation\n\n- [Nx Documentation](https://nx.dev)\n- [30-minute video showing all Nx features](https://nx.dev/getting-started/what-is-nx)\n- [Interactive Tutorial](https://nx.dev/tutorial/01-create-application)\n\n### Adding capabilities to the workspace\n\nNx supports many plugins which add capabilities for developing different types of applications and different tools.\n\nThese capabilities include generating applications, libraries, .etc as well as the devtools to test, and build projects as well.\n\nBelow are some plugins which can be added to the workspace:\n\n| Application type                       | Command                  | Part of the workspace |\n| -------------------------------------- | ------------------------ | --------------------- |\n| [Angular](https://angular.io)          | `ng add @nrwl/angular`   | :heavy_check_mark:    |\n| [React](https://reactjs.org)           | `ng add @nrwl/react`     | :x:                   |\n| Web (no framework frontends)           | `ng add @nrwl/web`       | :heavy_check_mark:    |\n| [Nest](https://nestjs.com)             | `ng add @nrwl/nest`      | :heavy_check_mark:    |\n| [Express](https://expressjs.com)       | `ng add @nrwl/express`   | :x:                   |\n| [Node](https://nodejs.org)             | `ng add @nrwl/node`      | :heavy_check_mark:    |\n| [Storybook](https://storybook.js.org/) | `ng add @nrwl/storybook` | :heavy_check_mark:    |\n| [Cypress](https://www.cypress.io/)     | `ng add @nrwl/cypress`   | :heavy_check_mark:    |\n\n### Generating an application\n\nTo generate an application run:\n\n```bash\nnpx nx g @nrwl/angular:app my-app\n```\n\n\u003e You can use any of the plugins above to generate applications as well.\n\nWhen using Nx, you can create multiple applications and libraries in the same workspace.\n\n### Generating a library\n\nTo generate a library run:\n\n```bash\nnpx nx g @nrwl/angular:lib my-lib\n```\n\n\u003e You can also use any of the plugins above to generate libraries as well.\n\nLibraries are sharable across libraries and applications.\n\nIt can be imported from `@nx-ng-starter/mylib`.\n\n### Running a development server\n\nTo start a dev server run:\n\n```bash\nnpx nx serve my-app\n```\n\nNavigate to http://localhost:4200/.\n\nThe app will automatically reload if you change any of the source files.\n\n### Code scaffolding\n\nTo generate a new component run:\n\n```bash\nnpx nx g @nrwl/angular:component my-component --project=my-app\n```\n\n### Building applications\n\nTo build the project run:\n\n```bash\nnpx nx build my-app\n```\n\nThe build artifacts will be stored in the `dist/` directory.\n\nUse the `--prod` flag for a production build.\n\n### Unit testing with [Jest](https://jestjs.io)\n\nTo execute the unit tests run:\n\n```bash\nnpx nx test my-app\n```\n\nTo execute the unit tests affected by a change run:\n\n```bash\nnpx nx affected:test\n```\n\n### End-to-end testing with [Cypress](https://www.cypress.io)\n\nTo execute the end-to-end tests run:\n\n```bash\nnpx nx e2e my-app\n```\n\nTo execute the end-to-end tests affected by a change run:\n\n```bash\nnpx nx affected:e2e\n```\n\n### Understanding the workspace\n\nTo see a diagram of the dependencies of the projects run:\n\n```bash\nnpx nx dep-graph\n```\n\n### Generating a storybook for a feature or ui library\n\n```bash\nnpx nx g @nrwl/angular:storybook-configuration project-name\n```\n\n### Tools help\n\n```bash\nnpx nx run tools:help\n```\n\n### Further help\n\nVisit the [Nx Documentation](https://nx.dev) to learn more.\n\n## Technologies Reference\n\n### Workspace\n\n- [Nrwl Nx](https://nx.dev)\n\n### Client\n\n- [Angular](https://angular.io)\n- [Angular CLI](https://cli.angular.io/)\n- [Angular Material](https://material.angular.io/)\n- [Apollo Angular](https://github.com/apollographql/apollo-angular)\n- [Material Design Guidelines](https://material.io)\n- [NgRx](https://ngrx.io/)\n\n### Server\n\n- [NestJS](https://nestjs.com/)\n- [Firebase JS Reference](https://firebase.google.com/docs/reference/js/)\n- [Express GraphQL Server](https://graphql.org/graphql-js/running-an-express-graphql-server/)\n- [Angular Firebase: Apollo Server](https://angularfirebase.com/lessons/graphql-apollo-2-tutorial-node/#Apollo-Server)\n- [GRPC](https://grpc.io/)\n\n### Testing\n\n- [Cypress](https://www.cypress.io/)\n- [Jest](https://jestjs.io/)\n\n### Documentation\n\n- [Compodoc](https://compodoc.github.io/compodoc/)\n\n### CI\n\n- [GitHub Actions](https://github.com/features/actions)\n\n### Development methodology\n\n- [Trunk based development](https://trunkbaseddevelopment.com/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frelliv%2Fnx-ng-tw-starter-testa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frelliv%2Fnx-ng-tw-starter-testa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frelliv%2Fnx-ng-tw-starter-testa/lists"}