{"id":25518,"library":"eslint-plugin-mavenlint","title":"eslint-plugin-mavenlint","description":"Custom ESLint rules for the Mavenlink codebase. This ESLint plugin provides a set of custom lint rules tailored for Mavenlink's specific coding conventions and best practices. Version 0.4.1 is the latest stable release. The plugin is maintained as part of the Mavenlink organization on GitHub. Unlike generic ESLint plugins, these rules enforce Mavenlink-specific patterns and avoid common pitfalls in their projects. The package requires eslint >=4.14.0 as a peer dependency.","status":"active","version":"0.4.1","language":"javascript","source_language":"en","source_url":"https://github.com/mavenlink/mavenlint","tags":["javascript"],"install":[{"cmd":"npm install eslint-plugin-mavenlint","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-mavenlint","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-mavenlint","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency required for plugin to function","package":"eslint","optional":false}],"imports":[{"note":"This is an ESLint plugin. It is not imported directly in code but configured in .eslintrc or eslint config file.","wrong":"require('eslint-plugin-mavenlint')","symbol":"default (plugin object)","correct":"module.exports = {\n  plugins: ['mavenlint'],\n  rules: {\n    'mavenlint/rule-name': 'error'\n  }\n};"},{"note":"If using TypeScript or ESM, import configs like this. If using CommonJS, use the plugin object directly.","wrong":"const configs = require('eslint-plugin-mavenlint/configs');","symbol":"configs","correct":"import { configs } from 'eslint-plugin-mavenlint';"},{"note":"Access individual rule definitions for custom configuration.","wrong":"const rules = require('eslint-plugin-mavenlint').rules;","symbol":"rules","correct":"import { rules } from 'eslint-plugin-mavenlint';"}],"quickstart":{"code":"// .eslintrc.js\nmodule.exports = {\n  plugins: ['mavenlint'],\n  rules: {\n    'mavenlint/rule-name': 'error'\n  }\n};","lang":"javascript","description":"Shows how to configure the plugin in an ESLint configuration file."},"warnings":[{"fix":"Add 'plugins: [\"mavenlint\"]' to your ESLint config.","message":"Plugin must be listed in plugins array, not just rules.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use rule names like 'mavenlint/rule-name'.","message":"Rules are prefixed with 'mavenlint/'.","severity":"gotcha","affected_versions":">=0.0.0"},{"fix":"Use full rule name with 'mavenlint/' prefix.","message":"Deprecated: using 'mavenlint' without prefix may be removed.","severity":"deprecated","affected_versions":">=0.4.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 eslint-plugin-mavenlint --save-dev'","cause":"Plugin not installed or not in node_modules.","error":"Error: Failed to load plugin 'mavenlint' declared in '.eslintrc.js': Cannot find module 'eslint-plugin-mavenlint'"},{"fix":"Use 'error', 'warn', or 'off' (or 2, 1, 0).","cause":"Invalid severity level.","error":"ESLint configuration error: The rules configuration 'mavenlint/rule-name' has a severity of 'warn' which is not allowed. Allowed values: 0, 1, 2, 'off', 'warn', 'error'."},{"fix":"Use 'mavenlint/rule-name' instead of 'rule-name'.","cause":"Rule name spelled incorrectly or missing prefix.","error":"Definition for rule 'rule-name' was not found."}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}