Los presets de Eslint recomendados por flexión de código.
| Pila | Configuración | Descripción |
|---|---|---|
![]() | javascript | Configuración predeterminada, adecuada para cualquier proyecto JavaScript/TypeScript . |
![]() | mecanografiado | Configuración para proyectos de mecanografiado estrictos. |
![]() | nodo | Config para proyectos node.js. |
![]() | angular | Configuración para proyectos angulares . |
![]() | ngrx | Configuración para proyectos angulares utilizando la biblioteca NGRX . |
![]() | gráfico | Config para servidores GraphQL implementados en Node.js. |
![]() | broma | Configuración para proyectos que usan broma para las pruebas. |
![]() | vitest | Configuración para proyectos que usan Vitest para pruebas. |
![]() | ciprés | Configuración para proyectos que usan Cypress para pruebas. |
![]() | libro de cuentos | Configuración para proyectos utilizando el libro de cuentos para componentes de la interfaz de usuario. |
Algunas configuraciones extienden otras configuraciones, como se ilustra a continuación. Entonces, por ejemplo, extender la configuración angular también extiende implícitamente las configuraciones typescript y javascript .
gráfico bt;
JavaScript ("JavaScript")
TypeScript ("TypeScript")
nodo ("nodo")
angular ("angular")
ngrx ("ngrx")
GraphQL ("GraphQl")
TypeScript-Extends-> JavaScript
nodo --xtends-> javaScript
Angular-Extendes-> TypeScript
NGRX-Extends-> Angular
GraphQl-Extends-> nodo
Para usar la configuración predeterminada, siga estos pasos:
Primero debe instalar todas las dependencias de pares requeridas (si aún no lo ha hecho):
npm install -D eslint @eslint/js eslint-plugin-{functional,import,promise,sonarjs,unicorn} globals typescript-eslint Instalar @code-pushup/eslint-config con:
npm install -D @code-pushup/eslint-config Incluya la configuración predeterminada en su archivo de configuración de Eslint (generalmente eslint.config.js ):
import javascript from '@code-pushup/eslint-config/javascript.js' ;
import tseslint from 'typescript-eslint' ;
export default tseslint . config ( ... javascript ) ;Dependiendo de su pila tecnológica, es posible que desee extender otras configuraciones también (enumeradas anteriormente). Esto requerirá instalar dependencias de pares adicionales. Para obtener más detalles, consulte los documentos de configuración para las configuraciones que le interesan usar.
Todas las dependencias de pares utilizadas por @code-pushup/eslint-config se enumeran a continuación, junto con sus versiones compatibles. Solo se requieren las dependencias de la configuración predeterminada, otras son opcionales.
| Paquete NPM | Versión | Requerido | |
|---|---|---|---|
![]() | eslint | ^9.0.0 | ✅ |
![]() | @eslint/js | ^9.0.0 | ✅ |
![]() | eslint-plugin-funcional | ^7.0.0 | ✅ |
![]() | Eslint-Plugin-Import | ^2.31.0 | ✅ |
![]() | típico | ^3.0.0 | |
![]() | Eslint-Plugin-Promise | >=6.4.0 | ✅ |
![]() | Eslint-Plugin-Sonarjs | ^1.0.4 | ✅ |
![]() | eslint-plugin-unicornio | >=50.0.0 | ✅ |
![]() | globales | >=14.0.0 | ✅ |
![]() | TypeScript-sonlint | ^8.0.0 | ✅ |
![]() | @Graphql-eslint/Eslint-Plugin | ^3.0.0 | |
![]() | @ngrx/eslint-plugin | ^18.0.0 | |
![]() | angular | ^18.0.0 | |
![]() | Eslint-plugin-cypress | >=3.3.0 | |
![]() | eslint-plugin-best | ^28.8.0 | |
![]() | Eslint-plugin-Jest-formatting | ^3.0.0 | |
![]() | eslint-plugin-n | >=17.0.0 | |
![]() | Eslint-plugin-rxjs-x | >=0.6.0 | |
![]() | Eslint-plugin-storybook | >=0.10.0 | |
![]() | eslint-plugin-vitest | >=0.5.0 |
Para el código de no producción, algunas reglas están deshabilitadas (o se rebajan de errores a advertencias).
Esto se aplica a las rutas de archivos que coinciden con cualquiera de los siguientes globos:
**/*.spec.?(c|m)[jt]s?(x)**/*.test.?(c|m)[jt]s?(x)**/__tests__/**/*.?(c|m)[jt]s?(x)**/__mocks__/**/*.?(c|m)[jt]s?(x)**/*.cy.?(c|m)[jt]s?(x)**/*.stories.?(c|m)[jt]s?(x)**/*.e2e.?(c|m)[jt]s?(x)**/*.mock.?(c|m)[jt]s?(x)**/*.mocks.?(c|m)[jt]s?(x)**/test/**/*.?(c|m)[jt]s?(x)**/tests/**/*.?(c|m)[jt]s?(x)**/mocks/**/*.?(c|m)[jt]s?(x)**/testing-utils/**/*.?(c|m)[jt]s?(x)**/test-utils/**/*.?(c|m)[jt]s?(x)**/fixtures/**/*.?(c|m)[jt]s?(x)**/*.config.?(c|m)[jt]s**/.prettierrc.?(c|m)[jt]s**/codegen.?(c|m)[jt]s**/test-setup.?(c|m)[jt]sLa instalación de Node.js es un requisito previo (versión LTS). Instalar dependencias con NPM:
npm installPara ejecutar pruebas:
npm testPara generar documentación:
npm run docs