{"id":19734,"library":"eslint-plugin-ember-suave","title":"eslint-plugin-ember-suave","description":"DockYard's ESLint plugin for Ember apps, providing custom linting rules and a recommended configuration based on their styleguide. Version 2.0.1 is the latest stable release; the plugin is in maintenance mode with no recent updates. It is intended for use with Ember CLI projects via ember-cli-eslint or standalone ESLint. Key differentiators: tailored specifically for Ember.js conventions and DockYard's engineering practices. Supports Node >=8.0.0 and is published as an npm package.","status":"maintenance","version":"2.0.1","language":"javascript","source_language":"en","source_url":null,"tags":["javascript","eslint","eslintplugin","eslint-plugin"],"install":[{"cmd":"npm install eslint-plugin-ember-suave","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-ember-suave","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-ember-suave","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"Used in .eslintrc.js as an ESLint config extension, not a direct import.","wrong":"require('eslint-plugin-ember-suave').configs.recommended","symbol":"plugin:ember-suave/recommended","correct":"extends: ['plugin:ember-suave/recommended']"},{"note":"Rules must be prefixed with 'ember-suave/' to avoid collision with core ESLint rules.","wrong":"rules: { 'no-const-outside-module-scope': 'error' }","symbol":"ember-suave/no-const-outside-module-scope","correct":"rules: { 'ember-suave/no-const-outside-module-scope': 'error' }"},{"note":"Install as a devDependency since it's a build-time tool.","wrong":"npm install --save eslint-plugin-ember-suave","symbol":"eslint-plugin-ember-suave (package)","correct":"npm install --save-dev eslint-plugin-ember-suave"}],"quickstart":{"code":"// .eslintrc.js\nmodule.exports = {\n  plugins: ['ember', 'ember-suave'],\n  extends: ['eslint:recommended', 'plugin:ember-suave/recommended'],\n  rules: {\n    'quotes': ['error', 'single'],\n    'ember-suave/no-const-outside-module-scope': 'off'\n  }\n};","lang":"javascript","description":"Configures ESLint to use the ember-suave plugin with its recommended rules, demonstrating plugin and rules setup."},"warnings":[{"fix":"Review rules and consider migrating to eslint-plugin-ember for better maintenance.","message":"Plugin contains deprecated rules that may not be updated for latest Ember/ESLint versions.","severity":"deprecated","affected_versions":">=2.0.0"},{"fix":"Always prefix custom rules with 'ember-suave/', e.g., 'ember-suave/no-const-outside-module-scope'.","message":"Common mistake: omitting 'ember-suave/' prefix on rule names leads to 'Definition for rule was not found' error.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Update Node.js to version 8 or higher.","message":"Plugin requires Node >=8.0.0; using older Node versions causes install/runtime errors.","severity":"gotcha","affected_versions":">=2.0.0"},{"fix":"Consider using eslint-plugin-ember as a more actively maintained alternative.","message":"Plugin is in maintenance mode; no new updates expected.","severity":"deprecated","affected_versions":">=2.0.0"}],"env_vars":null,"search_vec":"'2.0.1':26 '8.0.0':73 'app':12 'base':21 'cli':49,54 'configur':20 'convent':65 'custom':14 'differenti':60 'dockyard':6,67 'ember':4,11,48,53 'ember-cli-eslint':52 'ember.js':64 'engin':69 'eslint':2,8,55,58,82,85 'eslint-plugin':84 'eslint-plugin-ember-suav':1 'eslintplugin':83 'intend':44 'javascript':81 'key':59 'latest':29 'lint':15 'mainten':36 'mode':37 'node':72 'npm':79 'packag':80 'plugin':3,9,33,86 'practic':70 'project':50 'provid':13 'publish':76 'recent':40 'recommend':19 'releas':31 'rule':16 'specif':62 'stabl':30 'standalon':57 'styleguid':24 'suav':5 'support':71 'tailor':61 'updat':41 'use':46 'version':25 'via':51","created_at":"2026-04-25T11:19:21.983328+00:00","updated_at":"2026-04-25T11:19:21.983328+00:00","problems":[{"fix":"Run `npm install --save-dev eslint-plugin-ember-suave` in your project.","cause":"Plugin not installed or not in node_modules.","error":"ESLint couldn't find the plugin \"eslint-plugin-ember-suave\""},{"fix":"Ensure 'ember-suave' is listed in plugins array and rule is prefixed with 'ember-suave/'.","cause":"Rule name missing 'ember-suave/' prefix or plugin not added to plugins array.","error":"Definition for rule 'ember-suave/no-const-outside-module-scope' was not found"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":"","cli_version":null,"type":"library","homepage":null,"github":null,"docs":null,"changelog":null,"pypi":null,"npm":"https://www.npmjs.com/package/eslint-plugin-ember-suave","openapi_spec":null,"status_page":null,"smithery":null,"categories":["testing"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-17","next_check":"2026-07-24","install_tag":null}}