🌐
npm
npmjs.com › package › eslint-plugin-n
eslint-plugin-n - npm
1 month ago - Additional ESLint's rules for Node.js. Latest version: 17.24.0, last published: 22 days ago. Start using eslint-plugin-n in your project by running `npm i eslint-plugin-n`. There are 2226 other projects in the npm registry using eslint-plugin-n.
      » npm install eslint-plugin-n
    
Published   Feb 15, 2026
Version   17.24.0
Author   Toru Nagashima
🌐
GitHub
github.com › eslint-community › eslint-plugin-n › releases
Releases · eslint-community/eslint-plugin-n
Additional ESLint rules for Node.js. Contribute to eslint-community/eslint-plugin-n development by creating an account on GitHub.
Author   eslint-community
🌐
ESLint
eslint.org › docs › latest › extend › plugins
Create Plugins - ESLint - Pluggable JavaScript Linter
While the meta object is the preferred way to provide the plugin name and version, this format is also acceptable and is provided for backward compatibility. Plugins can expose custom rules for use in ESLint. To do so, the plugin must export a rules object containing a key-value mapping of rule ID to rule.
🌐
GitHub
github.com › eslint-community › eslint-plugin-n › blob › master › docs › rules › file-extension-in-import.md
eslint-plugin-n/docs/rules/file-extension-in-import.md at master · eslint-community/eslint-plugin-n
.xxx is the overriding setting for specific file extensions. You can use arbitrary property names which start with .. Examples of 👎 incorrect code for the "always" option: /*eslint n/file-extension-in-import: ["error", "always"]*/ import foo from "./path/to/a/file"
Author   eslint-community
🌐
npm
npmjs.com › search
eslint plugin node - npm search
ESLint plugin to check Node.js dependencies.
🌐
Snyk
security.snyk.io › snyk vulnerability database › npm
eslint-plugin-n vulnerabilities | Snyk
Published: 4 years ago Last updated: 19 days ago Latest version: 17.24.0 Latest non-vulnerable version: 17.24.0 ... Loading chart... ... Further analysis of the maintenance status of eslint-plugin-n based on released npm versions cadence, the repository activity, and other data points determined that its maintenance is Healthy.
Find elsewhere
🌐
jsDelivr
cdn.jsdelivr.net › eslint-plugin-n@17.23.2
eslint-plugin-n CDN by jsDelivr - A free, fast, and reliable Open Source CDN
eslint-plugin-n CDN by jsDelivr - A free, fast, and reliable Open Source CDN for npm and GitHub
🌐
ESLint
eslint.org › docs › latest › use › getting-started
Getting Started with ESLint
Every single rule is a plugin and you can add more at runtime. You can also add community plugins, configurations, and parsers to extend the functionality of ESLint. To use ESLint, you must have Node.js (^20.19.0, ^22.13.0, or >=24) installed and built with SSL support.
🌐
CodeSandbox
codesandbox.io › examples › package › eslint-plugin-n
eslint-plugin-n examples - CodeSandbox
Use this online eslint-plugin-n playground to view and fork eslint-plugin-n example apps and templates on CodeSandbox.
🌐
GitHub
github.com › eslint-community › eslint-plugin-n
GitHub - eslint-community/eslint-plugin-n: Additional ESLint rules for Node.js · GitHub
eslint-plugin-n follows semantic versioning and ESLint's Semantic Versioning Policy.
Starred by 325 users
Forked by 53 users
Languages   JavaScript
🌐
Nx
nx.dev › docs › technologies › eslint › eslint-plugin
ESLint Plugin | Nx
Nx ESLint plugin features · ESLint plugin configuration guides
🌐
ESLint
eslint.org › docs › latest › rules
Rules Reference - ESLint - Pluggable JavaScript Linter
A pluggable and configurable linter tool for identifying and reporting on patterns in JavaScript. Maintain your code quality with ease.
🌐
Bundlephobia
bundlephobia.com › package › eslint-plugin-n
eslint-plugin-n ❘ Bundlephobia
Find the size of javascript package eslint-plugin-n. Bundlephobia helps you find the performance impact of npm packages.
🌐
ESLint
eslint.org › docs › latest › use › migrating-to-7.0.0
Migrating to v7.0.0 - ESLint - Pluggable JavaScript Linter
Starting in ESLint v7.0.0, plugins are resolved relative to the directory path of the entry configuration file. This will not change anything in most cases.
🌐
npm Trends
npmtrends.com › eslint-plugin-n-vs-eslint-plugin-node
eslint-plugin-n vs eslint-plugin-node | npm trends
Comparing trends for eslint-plugin-n 17.24.0 which has 5,285,290 weekly downloads and 325 GitHub stars vs. eslint-plugin-node 11.1.0 which has 2,208,263 weekly downloads and 961 GitHub stars.
🌐
GitHub
github.com › standard › eslint-config-standard › issues › 412
Support eslint-plugin-n 17 · Issue #412 · standard/eslint-config-standard
April 30, 2024 - $ npm install npm ERR! code ERESOLVE npm ERR! ERESOLVE could not resolve npm ERR! npm ERR! While resolving: eslint-config-standard@17.1.0 npm ERR! Found: eslint-plugin-n@17.4.0 npm ERR! node_modules/eslint-plugin-n npm ERR! dev eslint-plugin-n@"^17.4.0" from the root project npm ERR!
Author   otto-liljalaakso-nt
🌐
GitHub
github.com › eslint-community › eslint-plugin-n › blob › master › docs › rules › no-unsupported-features › node-builtins.md
eslint-plugin-n/docs/rules/no-unsupported-features/node-builtins.md at master · eslint-community/eslint-plugin-n
This rule reports unsupported Node.js built-in APIs on the configured Node.js version as lint errors. Editor integrations of ESLint would be useful to know it in real-time.
Author   eslint-community
🌐
Nx
nx.dev › technologies › eslint › eslint-plugin › api
nx/eslint-plugin
Nx ESLint plugin features · ESLint plugin configuration guides
Top answer
1 of 3
10

Credit to Brad Zacher's answer for drawing my attention to How do I check to see what versions are installed?

If you have multiple versions of our tooling, it can cause various bugs for you. This is because ESLint may load a different version each run depending on how you run it - leading to inconsistent lint results.

Installing our tooling in the root of your project does not mean that only one version is installed. One or more of your dependencies may have its own dependency on our tooling, meaning npm/yarn will additionally install that version for use by that package. For example, react-scripts (part of create-react-app) has a dependency on our tooling.

You can check what versions are installed in your project using the following commands:

npm npm list @typescript-eslint/eslint-plugin @typescript-eslint/parser

Yarn yarn list --pattern "@typescript-eslint/eslint-plugin|@typescript-eslint/parser"

pnpm pnpm list @typescript-eslint/eslint-plugin @typescript-eslint/parser

If you see more than one version installed, then you will have to either use yarn resolutions to force a single version, or you will have to downgrade your root versions to match the dependency versions.

The best course of action in this case is to wait until your dependency releases a new version with support for our latest versions.

I used the yarn command, which gave the following output

yarn list v1.22.19
├─ @typescript-eslint/[email protected]
├─ @typescript-eslint/[email protected]
└─ [email protected]
   ├─ @typescript-eslint/[email protected]
   └─ @typescript-eslint/[email protected]

So the solution was to downgrade @typescript-eslint/eslint-plugin and @typescript-eslint/parser to version 5.62.0 in my package.json, to match the version used by eslint-config-react-app.

I then hit a different error:

There was a problem loading formatter: ...\node_modules\eslint\lib\cli-engine\formatters\stylish Error: require() of ES Module ...\node_modules\strip-ansi\index.js from ...\assertion-lib\node_modules\eslint\lib\cli-engine\formatters\stylish.js not supported. Instead change the require of index.js in ...\node_modules\eslint\lib\cli-engine\formatters\stylish.js to a dynamic import() which is available in all CommonJS modules.

Manually editing something in the node_modules folder didn't sound right, however it seems that this is a bug in yarn. So I deleted the yarn.lock file from my project and deleted the node_modules folder (which may have been overkill) and ran a npm install and now eslint is linting my typescript code successfully.

2 of 3
1

ESLint is warning you that there are multiple versions of the plugin installed in your workspace, and that your configuration is setup so that you've asked ESLint to import these multiple versions.

So either you'll need to change your config to avoid this, or (more likely) you'll need to use your package manager's resolutions feature to ensure there's only one version of the plugin installed.

This FAQ article might help as it lists some commands and provides some more context: https://typescript-eslint.io/linting/troubleshooting/#how-do-i-check-to-see-what-versions-are-installed