Skip to content

Repository files navigation

eslint-plugin-depend

This is an ESLint plugin to help suggest alternatives to various dependencies.

Primarily, it will help detect dependency tree bloat and redundant polyfills.

Note

The functionality of this plugin is now available in the @e18e/eslint-plugin, as well as many more performance and quality of life rules. You can easily migrate by replacing eslint-plugin-depend with @e18e/eslint-plugin in your package.json and updating your ESLint config.

import e18e from '@e18e/eslint-plugin';
import {defineConfig} from 'eslint/config';

export default defineConfig([
  e18e.configs.recommended,
]);

Install

npm i -D eslint-plugin-depend

Usage

If you're using the new flat config files, add to your eslint.config.js:

import depend from 'eslint-plugin-depend';
import {defineConfig} from 'eslint/config';

export default defineConfig([
  {
    files: ['**/*.js'],
    plugins: {
      depend
    },
    extends: ['depend/flat/recommended'],
  }
]);

For older legacy projects, add to your .eslintrc.json:

{
  "extends": [
    "plugin:depend/recommended"
  ]
}

With package.json

Some rules (e.g. ban-dependencies) can be used against your package.json.

You can achieve this by using @eslint/json or jsonc-eslint-parser.

For example, with @eslint/json and eslint.config.js:

import depend from 'eslint-plugin-depend';
import json from '@eslint/json';
import {defineConfig} from 'eslint/config';

export default defineConfig([
  {
    files: ['package.json'],
    language: 'json/json',
    plugins: {
      depend,
      json
    },
    extends: ['depend/flat/recommended'],
  }
]);

Or with jsonc-eslint-parser and .eslintrc.json:

{
  "overrides": [
    {
      "files": ["package.json"],
      "parser": "jsonc-eslint-parser",
      "plugins": ["depend"],
      "rules": {
        "depend/ban-dependencies": "error"
      }
    }
  ]
}

Read more at the @eslint/json docs and jsonc-eslint-parser docs.

Rules

License

MIT

About

An ESLint plugin for suggesting optimisations in choice of dependency, native equivalents, etc.

Resources

Stars

492 stars

Watchers

7 watching

Forks

Releases

Packages

Used by

Contributors

Languages