{"id":19920,"library":"eslint-plugin-requirejs","title":"ESLint Plugin for RequireJS","description":"An ESLint plugin that enforces code conventions for RequireJS (AMD) modules. Version 4.0.1 requires ESLint >=3.0.0 and Node >=6. Provides 13 rules covering possible errors (e.g., no-invalid-define, no-multiple-define, no-js-extension) and stylistic choices (e.g., no-named-define, no-amd-define). Includes a bundled 'recommended' config that enables all recommended rules and sets the amd environment. Under active development with frequent updates. Compared to other module linting plugins, this is the only dedicated RequireJS/AMD plugin for ESLint.","status":"active","version":"4.0.1","language":"javascript","source_language":"en","source_url":"https://github.com/cvisco/eslint-plugin-requirejs","tags":["javascript","eslint","plugin","eslintplugin","eslint-plugin","require","requirejs","amd","lint"],"install":[{"cmd":"npm install eslint-plugin-requirejs","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-requirejs","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-requirejs","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"Use the plugin name 'requirejs' in ESLint config, not direct import.","wrong":"const requirejs = require('eslint-plugin-requirejs')","symbol":"plugin","correct":"module.exports = { plugins: ['requirejs'] }"},{"note":"Rules must be prefixed with 'requirejs/' in your config.","wrong":"\"rules\": { \"no-invalid-define\": \"error\" }","symbol":"rules","correct":"\"rules\": { \"requirejs/no-invalid-define\": \"error\" }"},{"note":"The full prefix 'plugin:' is required when extending the preset.","wrong":"\"extends\": [\"requirejs/recommended\"]","symbol":"extends","correct":"\"extends\": [\"plugin:requirejs/recommended\"]"}],"quickstart":{"code":"// .eslintrc.json\n{\n  \"plugins\": [\"requirejs\"],\n  \"extends\": [\"plugin:requirejs/recommended\"],\n  \"rules\": {\n    \"requirejs/no-named-define\": \"warn\",\n    \"requirejs/no-commonjs-wrapper\": \"error\"\n  }\n}\n\n// Example: define a module\n// Passes lint:\ndefine(['jquery'], function($) {\n  'use strict';\n  return function() { /* module code */ };\n});\n\n// Fails lint (named define):\ndefine('myModule', ['jquery'], function($) { return {}; });","lang":"javascript","description":"Configures ESLint with the requirejs plugin and recommended rules, with example valid and invalid module definitions."},"warnings":[{"fix":"Use Node >=6 and ESLint >=3.0.0. For older environments, install eslint-plugin-requirejs@3.2.0.","message":"Plugin requires ESLint >=3.0.0 and Node >=6. Older Node or ESLint will not work.","severity":"gotcha","affected_versions":">=4.0.0"},{"fix":"Use rule names like 'requirejs/no-invalid-define', not bare rule name.","message":"Rules must be prefixed with 'requirejs/' in ESLint config.","severity":"gotcha","affected_versions":"all"},{"fix":"Set extends to 'plugin:requirejs/recommended'.","message":"When extending the recommended config, use 'plugin:requirejs/recommended' not 'requirejs/recommended'.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Run 'npm install --save-dev eslint-plugin-requirejs' and ensure node_modules is in the correct location.","cause":"The plugin is not installed, or ESLint cannot find it.","error":"Error: Failed to load plugin 'requirejs': Cannot find module 'eslint-plugin-requirejs'"},{"fix":"Use 'requirejs/no-invalid-define' in your rules object.","cause":"The rule is not prefixed with 'requirejs/'.","error":"ESLint configuration error: The rule 'no-invalid-define' is not found"},{"fix":"Use 'off', 'warn', 'error', or 0, 1, 2.","cause":"Invalid severity value used in rule configuration.","error":"Configuration for rule 'requirejs/no-invalid-define' is invalid: Severity should be one of 0, 1, 2 or 'off','warn','error'."}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}