Empfohlene Eslint -Voreinstellungen durch Code Pushup.
| Stapel | Konfiguration | Beschreibung |
|---|---|---|
![]() | JavaScript | Standardkonfiguration, geeignet für jedes JavaScript/TypeScript -Projekt. |
![]() | Typoskript | Konfiguration für strenge Typscript -Projekte. |
![]() | Knoten | Konfiguration für Node.js -Projekte. |
![]() | eckig | Konfiguration für Winkelprojekte . |
![]() | ngrx | Konfiguration für Winkelprojekte mithilfe der NGRX -Bibliothek. |
![]() | Graphql | Konfiguration für GraphQL -Server in node.js. |
![]() | Scherz | Konfiguration für Projekte mit Scherz zum Testen. |
![]() | Vitest | Konfiguration für Projekte mit Vitest zum Testen. |
![]() | Zypresse | Konfiguration für Projekte mit Cypress zum Testen. |
![]() | Storybook | Konfiguration für Projekte mit Storybook für UI -Komponenten. |
Einige Konfigurationen erweitern andere Konfigurationen, wie unten dargestellt. So erweitert die Erweiterung angular beispielsweise auch die typescript und javascript -Konfigurationen.
Graph BT;
JavaScript ("JavaScript")
TypeScript ("TypeScript")
Knoten ("Knoten")
Angular ("Angular")
ngrx ("ngrx")
GraphQL ("GraphQl")
TypeScript-fordends-> JavaScript
Node-fordends-> JavaScript
Angular-extdends-> TypeScript
ngrx-extdends-> eckel
GraphQL-forders-> Knoten
Befolgen Sie die folgenden Schritte, um die Standardkonfiguration zu verwenden:
Sie müssen zuerst alle erforderlichen Peer -Abhängigkeiten installieren (falls Sie es noch nicht getan haben):
npm install -D eslint @eslint/js eslint-plugin-{functional,import,promise,sonarjs,unicorn} globals typescript-eslint Installieren Sie @code-pushup/eslint-config mit:
npm install -D @code-pushup/eslint-config Fügen Sie die Standardkonfiguration in Ihre ESLINT -Konfigurationsdatei ein (normalerweise eslint.config.js ):
import javascript from '@code-pushup/eslint-config/javascript.js' ;
import tseslint from 'typescript-eslint' ;
export default tseslint . config ( ... javascript ) ;Abhängig von Ihrem Tech -Stack möchten Sie möglicherweise auch andere Konfigurationen erweitern (oben aufgeführt). Dies erfordert die Installation zusätzlicher Peer -Abhängigkeiten. Weitere Informationen finden Sie in Setup -Dokumenten für die Konfigurationen, an denen Sie interessiert sind.
Alle Peer-Abhängigkeiten, die von @code-pushup/eslint-config verwendet werden, sind unten zusammen mit ihren unterstützten Versionen aufgeführt. Es sind nur die Abhängigkeiten der Standardkonfiguration erforderlich, andere sind optional.
| NPM -Paket | Version | Erforderlich | |
|---|---|---|---|
![]() | Eslint | ^9.0.0 | ✅ |
![]() | @Eslint/js | ^9.0.0 | ✅ |
![]() | Eslint-Plugin-Funktional | ^7.0.0 | ✅ |
![]() | Eslint-Plugin-Import | ^2.31.0 | ✅ |
![]() | Eslint-Import-Resolver-Typecript | ^3.0.0 | |
![]() | Eslint-Plugin-Promotion | >=6.4.0 | ✅ |
![]() | Eslint-Plugin-Sonarjs | ^1.0.4 | ✅ |
![]() | Eslint-Plugin-Unicorn | >=50.0.0 | ✅ |
![]() | Global | >=14.0.0 | ✅ |
![]() | Typscript-eSlint | ^8.0.0 | ✅ |
![]() | @GraphQl-ESLINT/ESLINT-PLUGIN | ^3.0.0 | |
![]() | @ngrx/Eslint-Plugin | ^18.0.0 | |
![]() | Angular-Eslint | ^18.0.0 | |
![]() | Eslint-Plugin-Cympress | >=3.3.0 | |
![]() | Eslint-Plugin-Jest | ^28.8.0 | |
![]() | Eslint-Plugin-Jest-Formatierung | ^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 |
Für den Nichtproduktionscode sind einige Regeln deaktiviert (oder von Fehlern auf Warnungen herabgestuft).
Dies gilt für Dateipfade, die einen der folgenden Globs entsprechen:
**/*.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]sDie Installation von Node.js ist eine Voraussetzung (LTS -Version). Installieren Sie Abhängigkeiten mit NPM:
npm installTests ausführen:
npm testDokumentation generieren:
npm run docs