{"id":25220,"library":"ember-template-lint-plugin-discourse","title":"ember-template-lint-plugin-discourse","description":"A shareable Ember template lint plugin providing a recommended ruleset for Discourse projects. Version 3.0.0 is the latest stable release. It extends ember-template-lint with Discourse-specific Handlebars/HTMLBars conventions. Unlike general lint plugins, this package enforces Discourse's custom formatting rules, making it essential for Discourse addon or theme development. Release cadence is low; updates typically track Discourse core changes.","status":"active","version":"3.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/discourse/ember-template-lint-plugin-discourse","tags":["javascript","hbs","handlebars","htmlbars","discourse"],"install":[{"cmd":"npm install ember-template-lint-plugin-discourse","lang":"bash","label":"npm"},{"cmd":"yarn add ember-template-lint-plugin-discourse","lang":"bash","label":"yarn"},{"cmd":"pnpm add ember-template-lint-plugin-discourse","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency; the plugin relies on ember-template-lint's core engine to function.","package":"ember-template-lint","optional":false}],"imports":[{"note":"Used as a string in .template-lintrc; no direct import needed.","wrong":"const plugin = require('ember-template-lint-plugin-discourse')","symbol":"plugin object (default import not used)","correct":"plugins: ['ember-template-lint-plugin-discourse']; extends: 'discourse:recommended'"},{"note":"The recommended config is exported as 'discourse:recommended' (not just 'discourse').","wrong":"extends: 'discourse'","symbol":"extend string","correct":"extends: 'discourse:recommended'"},{"note":"Package supports both CJS and ESM; prefer ESM for modern setups.","wrong":"const plugin = require('ember-template-lint-plugin-discourse')","symbol":"ES module import (if used programmatically)","correct":"import plugin from 'ember-template-lint-plugin-discourse'"}],"quickstart":{"code":"// Install with ember-template-lint\n// npm install --save-dev ember-template-lint ember-template-lint-plugin-discourse\n\n// .template-lintrc.js\nmodule.exports = {\n  plugins: ['ember-template-lint-plugin-discourse'],\n  extends: 'discourse:recommended',\n  rules: {\n    // Override or add rules as needed\n  }\n};\n\n// Run linting\n// npx ember-template-lint .","lang":"javascript","description":"Configures ember-template-lint with the Discourse plugin and recommended ruleset."},"warnings":[{"fix":"Ensure the plugin is included in the plugins array.","message":"The plugin must be listed in 'plugins' before using 'extends: discourse:recommended'.","severity":"gotcha","affected_versions":">=1.0"},{"fix":"Upgrade to 3.0 and use 'discourse:recommended'.","message":"Older versions (<3.0) may have used a different extends value or plugin name.","severity":"deprecated","affected_versions":"<3.0"},{"fix":"Use Node.js 12+ and Ember 3.20+.","message":"Version 3.0 drops support for Node.js 10 and older Ember versions.","severity":"breaking","affected_versions":">=3.0"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run npm install --save-dev ember-template-lint-plugin-discourse","cause":"Plugin not installed or missing in node_modules.","error":"Cannot find module 'ember-template-lint-plugin-discourse'"},{"fix":"Add 'ember-template-lint-plugin-discourse' to the plugins array in .template-lintrc.js","cause":"Plugin not included in plugins array.","error":"Unknown configuration extends value \"discourse:recommended\""}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}