You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/first-steps.md
+41Lines changed: 41 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -114,3 +114,44 @@ $ npm run start:dev
114
114
```
115
115
116
116
This command will watch your files, automatically recompiling and reloading the server.
117
+
118
+
#### Linting and formatting
119
+
120
+
[Nest CLI](/cli/overview) provides best effort to scaffold a reliable development workflow at scale. Thus, a generated Nest project comes with both a code **linter** and **formatter** preinstalled (respectively [eslint](https://eslint.org/) and [prettier](https://prettier.io/)).
121
+
122
+
> info **Hint** Not sure about the role of formatters VS linters ? Learn the difference [here](https://prettier.io/docs/en/comparison.html).
123
+
124
+
##### IDE usage
125
+
126
+
To ensure maximum stability and extensibility, we use the base [`eslint`](https://www.npmjs.com/package/eslint) and [`prettier`](https://www.npmjs.com/package/prettier) cli packages. This setup allows neat IDE integration with official extensions by design.
127
+
128
+
> warning **Warning** A Nest project is not using the [~~`prettier-eslint`~~](https://github.com/prettier/prettier-eslint) package, do not expect compatibility with extensions using it.
129
+
130
+
##### Scripted usage
131
+
132
+
For headless environments where an IDE is not relevant (*Continuous Integration*, *Git hooks*, ...), a Nest project comes with ready-to-use `npm` scripts.
133
+
134
+
```bash
135
+
# Lint and autofix with eslint
136
+
npm run lint
137
+
# Format with prettier
138
+
npm run format
139
+
```
140
+
141
+
##### Plugins and config
142
+
143
+
A Nest cli scaffolded project uses
144
+
145
+
-[`eslint-plugin-prettier`](https://github.com/prettier/eslint-plugin-prettier) to remove conflicting rules from `eslint` for use with `prettier`.
146
+
-[`@typescript-eslint/plugin`](https://github.com/typescript-eslint/typescript-eslint/tree/main/packages/eslint-plugin) to enable Typescript linting
147
+
148
+
> info **Hint** You can learn more about the behavior of `eslint-plugin-prettier` in its [documentation](https://github.com/prettier/eslint-plugin-prettier#recommended-configuration) and discover the actual configuration inside generated [`.eslintrc.js`](https://github.com/nestjs/typescript-starter/blob/master/.eslintrc.js) file
149
+
150
+
##### Code style
151
+
152
+
With this stack setup, by default we ensure the resulting code follows:
0 commit comments