A monorepo providing tooling to lint Angular projects with ESLint, including TypeScript and HTML template rules.
Angular ESLint is a monorepo of tools that enables ESLint to lint Angular projects, including both TypeScript source code and HTML templates. It provides Angular-specific ESLint rules, parsers, and seamless integration with Angular CLI to help developers maintain code quality and enforce best practices.
Angular developers and teams who want to use ESLint for static code analysis in their Angular applications, especially those migrating from TSLint or seeking a richer linting ecosystem.
Developers choose Angular ESLint because it brings the extensive plugin and rule ecosystem of ESLint to Angular, offers official tooling for easy setup with Angular CLI, and provides utilities for creating custom Angular-specific lint rules.
:sparkles: Monorepo for all the tooling related to using ESLint with Angular
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides dedicated ESLint rules and a template parser for Angular's TypeScript code and HTML templates, ensuring comprehensive linting of Angular constructs as highlighted in the key features.
Includes a builder for `ng lint` and schematics that automatically configure ESLint in Angular workspaces, simplifying setup and usage with commands like `ng add angular-eslint`.
Supports both modern ESLint flat config and legacy eslintrc formats, accommodating projects at different migration stages, as noted in the configuration docs.
Offers utilities like `@angular-eslint/utils` and `@angular-eslint/test-utils` to create and test custom ESLint rules tailored for Angular projects, with a dedicated writing guide.
Linting Angular templates and TypeScript with ESLint incurs a performance cost compared to purpose-built linters, as acknowledged in the README's notes on trade-offs and type-aware rules.
The project deliberately avoids maintaining code formatting rules, requiring teams to rely on external tools like Prettier, which is stated in the philosophy on formatting rules.
Optimal usage is tightly coupled with Angular CLI; projects using alternative build systems or monorepo tools like Nx may face integration challenges, as warned in the Nx usage section.