An ESLint plugin providing linting rules and best practices for Ember.js applications.
eslint-plugin-ember is an ESLint plugin that provides a comprehensive set of linting rules specifically for Ember.js applications. It helps developers follow Ember best practices, catch potential errors, and maintain consistent code quality across their projects. The plugin covers everything from template accessibility to modern Ember Octane patterns and deprecated API usage.
Ember.js developers and teams who want to enforce coding standards, improve code quality, and smoothly transition to modern Ember patterns. It's particularly valuable for projects maintaining large codebases or teams with multiple contributors.
Developers choose eslint-plugin-ember because it provides Ember-specific linting that generic ESLint rules can't offer, with comprehensive coverage of templates, components, and Ember patterns. Its official backing and alignment with Ember best practices make it the standard solution for Ember code quality.
An ESLint plugin that provides set of rules for Ember applications based on commonly known good practices.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Includes over 30 template-specific accessibility rules, such as requiring valid alt text and disallowing invalid ARIA roles, directly from the rules list to catch issues early.
Enforces native classes, tracked properties, and Glimmer components with rules like 'no-classic-components' and 'no-tracked-properties-from-args' to promote Octane patterns.
Many rules are marked with 🔧 for auto-fix, allowing quick resolution of issues like redundant attributes or deprecated syntax, as shown in the rules table.
Provides specific configurations for .gjs and .gts files, supporting First-Class Component Templates with the ember-eslint-parser, detailed in the usage section.
Setting up GJS and GTS files requires overrides and specific parsers like ember-eslint-parser, with warnings about parser overwrites, adding to initial setup complexity.
With over 200 rules, there can be overlaps with other ESLint plugins, requiring careful tuning to avoid redundant or contradictory linting errors.
The plugin is Ember-specific and offers no value for other frameworks, potentially lagging in support for general JavaScript features outside the Ember ecosystem.