{"id":25526,"library":"eslint-plugin-riot","title":"eslint-plugin-riot","description":"ESLint plugin that extracts and lints JavaScript from Riot.js tag files (.html and .tag). Version 0.1.8, last released in 2015, with no updates since. It supports ES6, Babel, or JavaScript script blocks within Riot tags but does not handle Riot mini ES6 syntax. The plugin is deprecated in favor of modern alternatives like eslint-plugin-html or directly linting compiled JS.","status":"deprecated","version":"0.1.8","language":"javascript","source_language":"en","source_url":"https://github.com/txchen/eslint-plugin-riot","tags":["javascript","eslint","eslintplugin","riot","lint","linter"],"install":[{"cmd":"npm install eslint-plugin-riot","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-riot","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-riot","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency required for plugin to function","package":"eslint","optional":false}],"imports":[{"note":"Config key is 'plugins', not 'rules' or 'extends'. The plugin is activated by adding to plugins array.","wrong":"require('eslint-plugin-riot') in config","symbol":"riot","correct":"plugins: ['riot']"},{"note":"Rules are not namespaced by default; plugin only extracts scripts, no custom rules.","wrong":"{\"rules\": {\"riot/no-console\": \"error\"}}","symbol":"rules","correct":"{\"plugins\": [\"riot\"], \"rules\": {\"no-console\": \"error\"}}"},{"note":"Plugin uses a processor to extract JS from HTML-like files; no explicit processor key needed in config.","wrong":"no processor configuration","symbol":"processor","correct":"{\"plugins\": [\"riot\"], \"settings\": {\"riot\": {\"extensions\": [\".html\", \".tag\"]}}}"}],"quickstart":{"code":"// Install\nnpm install --save-dev eslint-plugin-riot\n\n// .eslintrc.json\n{\n  \"plugins\": [\"riot\"],\n  \"settings\": {\n    \"riot\": {\n      \"extensions\": [\".html\", \".tag\"]\n    }\n  }\n}\n\n// Run ESLint on a .tag file\n// my-component.tag\n<my-component>\n  <p>{message}</p>\n  <script type=\"es6\">\n    this.message = 'Hello, Riot!'\n  </script>\n</my-component>","lang":"javascript","description":"Shows installation, config with plugins and settings, and a sample .tag file with ES6 script."},"warnings":[{"fix":"Switch to eslint-plugin-html or directly lint compiled JavaScript files.","message":"eslint-plugin-riot is unmaintained since 2015. Use eslint-plugin-html or modern alternatives.","severity":"deprecated","affected_versions":">=0.0.0"},{"fix":"Use explicit type attribute: <script type=\"es6\"> ... </script>.","message":"Only processes <script type=\"es6\"> or <script type=\"babel\"> — does not support default <script> or <script type=\"text/javascript\">.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Lint only the script blocks; inline expressions remain unchecked.","message":"Plugin does not handle Riot mini ES6 syntax (e.g., inline expressions like {opts.title}), only full script blocks.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use ESLint 1.x or consider alternative linting approach.","message":"ESLint 2.x+ no longer supports processors in the same way; this plugin may not work with ESLint 3+.","severity":"breaking","affected_versions":">=0.1.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 eslint-plugin-riot and ensure ESLint 1.x is used.","cause":"Plugin not installed or ESLint version incompatible.","error":"Error: Failed to load plugin 'riot'"},{"fix":"Add '--ext .html,.tag' to ESLint CLI or configure glob patterns in .eslintrc.","cause":"ESLint not configured to process .html or .tag files.","error":"No files matching the pattern were found"},{"fix":"Ensure 'riot' is listed in plugins array and the file extension is supported.","cause":"ESLint is trying to parse the HTML/tag file directly without the processor.","error":"Parsing error: Unexpected token <"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}