1- # Nx Ng Starter
2-
3- [ Nx] ( https://nx.dev/ ) + [ Angular] ( https://angular.io/ ) + [ NestJS] ( https://nestjs.com/ ) mono-repository starter with workflow automation.
1+ # Nx Angular NestJS Starter: A Scalable Monorepo Template for Angular and NestJS Applications
42
53[ ![ Commitizen friendly] ( https://img.shields.io/badge/commitizen-friendly-brightgreen.svg )] ( http://commitizen.github.io/cz-cli/ )
64
5+ ## Description
6+
7+ [ Nx] ( https://nx.dev/ ) [ Angular] ( https://angular.io/ ) [ NestJS] ( https://nestjs.com/ ) Starter is a powerful template designed for building scalable Angular and NestJS applications using Nx. It leverages modern development practices to enhance productivity and maintainability.
8+
9+ ## Key Features
10+
11+ - ** Monorepo Support:** Manage multiple Angular applications and libraries in a single repository.
12+ - ** Optimized Build Process:** Leverage Nx's caching and task running capabilities for faster builds.
13+ - ** Integrated Testing:** Built-in support for unit and end-to-end testing.
14+ - ** Customizable Configuration:** Easily adjust settings to fit your project's needs.
15+
716## Workflows
817
918| | Trigger | Badge |
@@ -56,6 +65,32 @@ In order to run own copy of the project one must fulfill the following requireme
5665- [Yarn](https://www.npmjs.com/package/yarn) - preferred package manager for dependencies installation in the project root.
5766- [npm](https://www.npmjs.com/package/npm) - preferred package manager for dependencies installation in the `functions` folder.
5867
68+ ### Getting started
69+
70+ 1. Clone the repository:
71+
72+ ```bash
73+ git clone https://github.com/rfprod/nx-ng-starter.git
74+ ```
75+
76+ 2 . Navigate to the project directory:
77+
78+ ``` bash
79+ cd ./nx-ng-starter
80+ ```
81+
82+ 3 . Install dependencies:
83+
84+ ``` bash
85+ yarn install --frozen-lockfile
86+ ```
87+
88+ 4 . Run the application:
89+
90+ ``` bash
91+ yarn start
92+ ```
93+
5994## Package scripts reference
6095
6196The 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)
@@ -127,139 +162,37 @@ npx nx generate client-util client-util-<feature-name> --tags=scope:client-util-
127162npx nx generate module-boundaries
128163```
129164
165+ ### Build the dependency graph
166+
167+ ``` bash
168+ npx nx dep-graph
169+ ```
170+
130171## General Tooling
131172
132173This project was generated using [ Nx] ( https://nx.dev ) .
133174
134175<p align =" center " ><img src =" https://raw.githubusercontent.com/nrwl/nx/master/nx-logo.png " width =" 350 " ></p >
135176
136- 🔎 ** Nx is a set of Angular CLI power-ups for modern development.**
137-
138177### Quick Start & Documentation
139178
140179- [ Nx Documentation] ( https://nx.dev )
141180- [ 30-minute video showing all Nx features] ( https://nx.dev/getting-started/what-is-nx )
142181- [ Interactive Tutorial] ( https://nx.dev/tutorial/01-create-application )
143182
144- ### Generating an application
145-
146- To generate an application run:
147-
148- ``` bash
149- npx nx g @nx/angular:app my-app
150- ```
151-
152- > You can use any of the plugins above to generate applications as well.
153-
154- When using Nx, you can create multiple applications and libraries in the same workspace.
155-
156- ### Generating a library
157-
158- To generate a library run:
159-
160- ``` bash
161- npx nx g @nx/angular:lib my-lib
162- ```
163-
164- > You can also use any of the plugins above to generate libraries as well.
165-
166- Libraries are sharable across libraries and applications.
167-
168- It can be imported from ` @nx-ng-starter/mylib ` .
169-
170- ### Running a development server
171-
172- To start a dev server run:
173-
174- ``` bash
175- npx nx serve my-app
176- ```
177-
178- Navigate to http://localhost:4200/ .
179-
180- The app will automatically reload if you change any of the source files.
181-
182- ### Code scaffolding
183-
184- To generate a new component run:
185-
186- ``` bash
187- npx nx g @nx/angular:component my-component --project=my-app
188- ```
189-
190- ### Building applications
191-
192- To build the project run:
193-
194- ``` bash
195- npx nx build my-app
196- ```
197-
198- The build artifacts will be stored in the ` dist/ ` directory.
199-
200- Use the ` --prod ` flag for a production build.
201-
202- ### Unit testing with [ Jest] ( https://jestjs.io )
203-
204- To execute the unit tests run:
205-
206- ``` bash
207- npx nx test my-app
208- ```
209-
210- To execute the unit tests affected by a change run:
211-
212- ``` bash
213- npx nx affected:test
214- ```
215-
216- ### End-to-end testing with [ Cypress] ( https://www.cypress.io )
217-
218- To execute the end-to-end tests run:
219-
220- ``` bash
221- npx nx e2e my-app
222- ```
223-
224- To execute the end-to-end tests affected by a change run:
225-
226- ``` bash
227- npx nx affected:e2e
228- ```
229-
230- ### Understanding the workspace
231-
232- To see a diagram of the dependencies of the projects run:
233-
234- ``` bash
235- npx nx dep-graph
236- ```
237-
238- ### Generating a storybook for a feature library or UI library
239-
240- ``` bash
241- npx nx g @nx/angular:storybook-configuration project-name
242- ```
243-
244- ### Tools help
245-
246- Print supported workspace commands
247-
248- ``` bash
249- npx nx run tools:help
250- ```
183+ ## Frequently Asked Questions
251184
252- ### Further help
185+ ### How do I contribute to this project?
253186
254- Visit the [ Nx Documentation ] ( https://nx.dev ) to learn more .
187+ Refer to the [ CONTRIBUTING.md ] ( CONTRIBUTING.md ) file for guidelines .
255188
256- ## Technology reference
189+ ### What technologies are used in this project?
257190
258- ### Workspace
191+ #### Workspace
259192
260193- [ Nrwl Nx] ( https://nx.dev )
261194
262- ### Client
195+ #### Client
263196
264197- [ Angular] ( https://angular.io )
265198- [ Angular CLI] ( https://cli.angular.io/ )
@@ -268,27 +201,27 @@ Visit the [Nx Documentation](https://nx.dev) to learn more.
268201- [ Material Design Guidelines] ( https://material.io )
269202- [ NgRx] ( https://ngrx.io/ )
270203
271- ### Server
204+ #### Server
272205
273206- [ NestJS] ( https://nestjs.com/ )
274207- [ Firebase JS Reference] ( https://firebase.google.com/docs/reference/js/ )
275208- [ Express GraphQL Server] ( https://graphql.org/graphql-js/running-an-express-graphql-server/ )
276209- [ Angular Firebase: Apollo Server] ( https://angularfirebase.com/lessons/graphql-apollo-2-tutorial-node/#Apollo-Server )
277210- [ GRPC] ( https://grpc.io/ )
278211
279- ### Testing
212+ #### Testing
280213
281214- [ Cypress] ( https://www.cypress.io/ )
282- - [ Jest ] ( https://jestjs.io / )
215+ - [ Vitest ] ( https://vitest.dev / )
283216
284- ### Documentation
217+ #### Documentation
285218
286219- [ Compodoc] ( https://compodoc.github.io/compodoc/ )
287220
288- ### CI
221+ #### CI
289222
290223- [ GitHub Actions] ( https://github.com/features/actions )
291224
292- ### Development methodology
225+ #### Development methodology
293226
294227- [ Trunk based development] ( https://trunkbaseddevelopment.com/ )
0 commit comments