Skip to content
PluginStats

eslint-plugin-import-x weekly downloads statistics

By un-ts (5 listings) · npm · ESLint plugins

Import with sanity.

View on npm Fresh · Oct 17, 2026

eslint-plugin-import-x has 3,194,752 recorded weekly downloads on npm, a decrease of 46.9% over the past 30 days.

It ranks #141 of 2,251 tracked npm listings by weekly downloads.

Over 90 days, weekly downloads changed by -38.8%.

PluginStats has 543 daily observations since Apr 23, 2025; the latest is from Oct 17, 2026.

Weekly downloads
3,194,752
Official API · Oct 17, 2026
7-day growth
-53.6%
-3.7M weekly downloads
30-day growth
-46.9%
-2.8M weekly downloads
90-day growth
-38.8%
-2M weekly downloads
Rank
#141
Among tracked npm listings

About eslint-plugin-import-x

eslint-plugin-import-x

This plugin intends to support linting of ES2015+ (ES6+) import/export syntax, and prevent issues with misspelling of file paths and import names. All the goodness that the ES2015+ static module syntax intends to provide, marked up in your editor.

It started as a fork of [eslint-plugin-import] using [get-tsconfig] to replace [tsconfig-paths] and heavy [typescript] under the hood, making it faster, through less heavy dependency on Typescript, and cleaner dependencies altogether.

eslint-plugin-i is now eslint-plugin-import-x

TOC

• Why • Differences • Installation • Configuration (new: eslint.config.*) • JS example • Typescript example • As a standalone ESLint plugin • Using defineConfig • Configuration (legacy: .eslintrc*) • TypeScript • Rules • Helpful warnings • Module systems • Static analysis • Style guide • Resolvers • import-x/resolver-next • import-x/resolver • Settings • import-x/extensions • import-x/ignore • import-x/core-modules • import-x/external-module-folders • import-x/parsers • import-x/resolver and import-x/resolver-next • import-x/cache • import-x/internal-regex • Sponsors and Backers • Sponsors • Backers • Changelog • License • Star History

Why

Many issues cannot be fixed easily without API changes. For example, see:

• • •

[eslint-plugin-import] refused to accept BREAKING CHANGES for these issues, so we had to fork it.

[eslint-plugin-import] now claims in that it will accept BREAKING CHANGES. However, still nothing is happening: .

[eslint-plugin-import] refuses to support the exports feature, and the maintainer even locked the feature request issue to prevent future discussion. In the meantime, eslint-plugin-import-x now provides first-party support for the exports feature , which will become the default in the next major version (v5).

We haven't resolved all the issues yet, but we are working on them, which could happen in the next major version (v5): .

Differences

So what are the differences from eslint-plugin-import exactly?

• we target Node ^18.18.0 || ^20.9.0 || >=21.1.0 + ESLint ^8.57.0 || ^9.0.0, while eslint-plugin-import targets Node >=4 and ESLint ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9 • we don't depend on old and outdated dependencies, so we have 16 dependencies compared to 117 dependencies for eslint-plugin-import • eslint-plugin-import uses tsconfig-paths + typescript itself to load tsconfigs while we use the single get-tsconfig instead, which is much faster and cleaner • eslint-plugin-import uses [resolve] which doesn't support the exports field in package.json while we build our own rust-based resolver [unrs-resolver] instead, which is feature-rich and way more performant. • Our v3 resolver interface shares a single resolver instance by default which is used all across resolving chains so it would benefit from caching and memoization out-of-the-box • ...

The list could be longer in the future, but we don't want to make it too long here. Hope you enjoy and let's get started.

Installation

Configuration (new: eslint.config.*)

From v8.21.0, ESLint announced a new config system. In the new system, .eslintrc* is no longer used. eslint.config.* would be the default config file name.

JS example

Typescript example

You have to install eslint-import-resolver-typescript:

[!NOTE] A complete list of available configuration can be found in config/flat folders

As a standalone ESLint plugin

Using defineConfig

Configuration (legacy: .eslintrc*)

[!TIP] If your eslint is >=8.23.0, you're 100% ready to use the new config system. See dedicated section above.

[!NOTE] All rules are off by default. However, you may configure them manually in your .eslintrc.(yml|json|js), or extend one of the canned configs:

TypeScript

You may use the following snippet or assemble your own config using the granular settings described below it.

[!WARNING] Make sure you have installed [@typescript-eslint/parser] and [eslint-import-resolver-typescript] which are used in the following configuration.

Rules

💼 Configurations enabled in.\ ⚠️ Configurations set to warn in.\ 🚫 Configurations disabled in.\ ❗ Set in the errors configuration.\ ❗ Set in the flat/errors configuration.\ ☑️ Set in the flat/recommended configuration.\ ⌨️ Set in the flat/typescript configuration.\ 🚸 Set in the flat/warnings configuration.\ ☑️ Set in the recommended configuration.\ ⌨️ Set in the typescript configuration.\ 🚸 Set in the warnings configuration.\ 🔧 Automatically fixable by the --fix CLI option.\ 💡 Manually fixable by editor suggestions.\ ❌ Deprecated.

Helpful warnings

| Name | Description | 💼 | ⚠️ | 🚫 | 🔧 | 💡 | ❌ |

| export | Forbid any invalid exports, i.e. re-export of the same name. | ❗ ❗ ☑️ ☑️ | | | | | | | no-deprecated | Forbid imported names marked with @deprecated documentation tag. | | | | | | | | no-empty-named-blocks | Forbid empty named import blocks. | | | | 🔧 | 💡 | | | no-extraneous-dependencies | Forbid the use of extraneous packages. | | | | | | | | no-mutable-exports | Forbid the use of mutable exports with var or let. | | | | | | | | no-named-as-default | Forbid use of exported name as identifier of default export. | | ☑️ 🚸 ☑️ 🚸 | | | | | | no-named-as-default-member | Forbid use of exported name as property of default export. | | ☑️ 🚸 ☑️ 🚸 | | | | | | no-rename-default | Forbid importing a default export by a different name. | | 🚸 🚸 | | | | | | no-unused-modules | Forbid modules without exports, or exports without matching import in another module. | | | | | | |

Module systems

| Name | Description | 💼 | ⚠️ | 🚫 | 🔧 | 💡 | ❌ |…

Description from the npm listing.

  • eslint
  • eslintplugin
  • eslint-plugin
  • es6
  • jsnext
  • modules
  • import
  • export

Where eslint-plugin-import-x sits in the listing

Each band is one page of 20. Weekly downloads on a log scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

All npm2,248 listings · 113 pages · page 8, #1 (overall #141)
All npm: every listing in weekly downloads order
PNG SVG
ESLint plugins252 listings · 13 pages · page 1, #18 (overall #18)
ESLint plugins: every listing in weekly downloads order
PNG SVG

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

eslint-plugin-import-x weekly downloads on npm, last 90 days: 3,194,752 weekly downloads as of Oct 17, 2026, -38.8% over 90 days.eslint-plugin-import-xWeekly downloads on npm · Last 90 days3,194,752downloads / week-38.8% over 90 days3M4M5M6M7M8M9MJul 19Aug 3Aug 18Sep 2Sep 17Oct 2Oct 17downloads / weekobservedarchived (Internet Archive)no observationsJul 20, 2026 – Oct 17, 2026 · 90 observations · Updated Oc…pluginstats.com
eslint-plugin-import-x weekly downloads on npm, last 90 days: 3,194,752 weekly downloads as of Oct 17, 2026, -38.8% over 90 days.
PNG SVG

7/30/90-day growth

eslint-plugin-import-x weekly downloads growth on npm: -53.6% over 7 days, -46.9% over 30 days, -38.8% over 90 days.eslint-plugin-import-xWeekly downloads growth on npm3,194,752downloads / week now7-day growth-3,688,125 weekly downlo…-53.6%30-day growth-2,824,401 weekly downlo…-46.9%90-day growth-2,027,082 weekly downlo…-38.8%Growth vs. nearest observation to each baseline date · Updated Oct 17, 2026pluginstats.com
eslint-plugin-import-x weekly downloads growth on npm: -53.6% over 7 days, -46.9% over 30 days, -38.8% over 90 days.
PNG SVG

Ranking history

eslint-plugin-import-x npm ranking history: currently #141 (by weekly downloads).eslint-plugin-import-xnpm ranking · by weekly downloads · Last 90 days#141current rank#40#60#80#100#120#140#160Jul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18rankOct 17, 2026 – Oct 18, 2026 · 2 observations · Updated Oct 17, 2026pluginstats.com
eslint-plugin-import-x npm ranking history: currently #141 (by weekly downloads).
PNG SVG

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Recent observations

Full history (543)
Recent weekly downloads observations for eslint-plugin-import-x
Date (UTC)Weekly downloadsChange vs. previous
3,194,752-519.7K
3,714,436+47.8K
3,666,682-1.5M
5,210,765-1.5M
6,760,3550
6,760,355-127K
6,887,352+4.5K
6,882,877+12.5K
6,870,398+65.4K
6,804,997+30.7K
6,774,294+38.8K
6,735,464-1.5M
8,239,287-84.8K
8,324,090—

Similar npm ESLint plugins plugins

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/eslint-plugin-import-x. First seen Oct 16, 2026; last successful collection Oct 18, 2026. See the methodology.