Skip to main content
interlace
Plugin: import-nextRules

max-dependencies

Enforce the maximum number of dependencies a module can have

💼 This rule is enabled in the following configs: recommended, typescript.

Rule Details

This rule aims to prevent issues related to max-dependencies.

Options

[
  {
    "type": "object",
    "properties": {
      "max": {
        "type": "number",
        "minimum": 1,
        "default": 10,
        "description": "Maximum number of dependencies allowed."
      },
      "ignoreTypeImports": {
        "type": "boolean",
        "default": true,
        "description": "Ignore type-only imports."
      },
      "ignoreImports": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Import sources to ignore."
      },
      "ignoreFiles": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "File patterns to ignore."
      }
    },
    "additionalProperties": false
  }
]

Implementation

OWASP Foundation

  • Category: A00:2021 - General Security

Use this rule

npm install -D oxlint-plugin-import-next
.oxlintrc.json
{  "jsPlugins": ["oxlint-plugin-import-next"],  "rules": {    "import-next/max-dependencies": "error"  }}
vite.config.ts
import { defineConfig } from 'vite-plus';export default defineConfig({  lint: {    jsPlugins: ['oxlint-plugin-import-next'],    rules: {      'import-next/max-dependencies': 'error',    },  },});

oxlint-plugin-import-next re-exports eslint-plugin-import-next/oxlint: the same rules under the same IDs, and no ESLint install. Why oxlint.

Did this rule catch something? Star the repo to get new CWE coverage as we ship it — or follow the AI-code-security benchmarks behind these rules.