Skip to content
PluginStats

@boundaries/eslint-plugin weekly downloads statistics

By boundaries · npm · ESLint plugins

Eslint plugin checking architecture boundaries between elements

View on npm Fresh · Oct 18, 2026

@boundaries/eslint-plugin has 14,875 recorded weekly downloads on npm, a decrease of 35.6% over the past 30 days, ranking #858 of 2,322 tracked listings.

Weekly downloads
14,875
Official API · Oct 18, 2026
7-day growth
-50.3%
-15.1K weekly downloads
30-day growth
-35.6%
-8.2K weekly downloads
90-day growth
+7.8%
+1.1K weekly downloads
Rank
#858
Among tracked npm listings

About @boundaries/eslint-plugin

License Build status Coverage Status Quality Gate

NPM downloads Renovate Last commit Last release

ESLint Plugin Boundaries

Enforce architectural boundaries in your JavaScript and TypeScript projects.

ESLint Plugin Boundaries is an ESLint plugin that helps you maintain clean architecture by enforcing boundaries between different parts of your codebase. Define your architectural layers, specify how they can interact, and get instant feedback when boundaries are violated.

  • Architectural Enforcement: Define dependency rules that match your project's architecture
  • Multi-Layer Classification: Every file or dependency in your project can be described across three independent dimensions simultaneously — its architectural element, its own file category, and its origin. Define rules for any combination.
  • Flexible Configuration: Adapt the plugin to any project structure. It works with monorepos, modular architectures, layered patterns, and any custom structure you can imagine
  • Real-time Feedback: Get immediate ESLint errors when imports violate your architectural rules

Documentation

The full documentation is available on the JS Boundaries website.

Key Sections
  • Overview - Introduction to the plugin and its core concepts
  • Quick Start - Set up the plugin in 5 minutes
  • Classification - How to classify files and folders for your architecture
  • Selectors - How to match classified files, elements, and modules in your rules
  • Policies - How to define dependency rules between classified files, elements, and modules
  • Rules Reference - Complete documentation for all available rules
  • TypeScript Support - Use with TypeScript projects

Quick Example

Install the plugin using npm:

npm install eslint eslint-plugin-boundaries --save-dev

Define your architectural elements:

import boundaries from "eslint-plugin-boundaries";

export default [
  {
    plugins: { boundaries },
    settings: {
      "boundaries/elements": [
        { type: "controller", pattern: "controllers/*" },
        { type: "model", pattern: "models/*" },
        { type: "view", pattern: "views/*" }
      ],
      "boundaries/files": [
        { category: "test", pattern: "**/*.test.js" }
      ]
    }
  }
];

Define your dependency rules:

{
  rules: {
    "boundaries/dependencies": [2, {
      default: "disallow",
      policies: [
        // Allow controllers to depend on models and views
        {
          from: { element: { type: "controller" } },
          allow: {
            to: { element: { types: { anyOf: ["model", "view"] } } },
          },
        },
        // Allow views to depend on models
        {
          from: { element: { type: "view" } },
          allow: {
            to: { element: { type: "model" } },
          },
        },
        // Disallow any element from importing a test file
        {
          disallow: {
            to: { file: { categories: "test" } },
          },
        },
        // Only controllers may use the `axios` package
        {
          from: { element: { type: "!controller" } },
          disallow: {
            to: { module: { origin: "external", source: "axios" } },
          },
        },
      ]
    }]
  }
}

Now ESLint will catch violations:

// In src/models/model/index.js
import View from "../../views/view"; // ❌ Error: Architectural boundary violated

Contributing

To everyone who has opened an issue, suggested improvements, fixed bugs, added features, or improved documentation: Thank you. Your contributions, no matter how small, make a real difference. Every bug report helps us improve, every feature request guides our roadmap, and every pull request strengthens the project.…

Description from the npm listing.

  • eslint
  • eslint-plugin
  • eslintplugin
  • plugin
  • architecture
  • boundaries
  • dependencies
  • elements
  • files
  • modules
  • analysis
  • hierarchy
  • import
  • dependency

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

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

Adoption over time

@boundaries/eslint-plugin weekly downloads on npm, last 90 days: 14,875 weekly downloads as of Oct 18, 2026, +7.8% over 90 days.@boundaries/eslint-pluginWeekly downloads on npm · Last 90 days14,875downloads / week+7.8% over 90 days010K20K30K40K50KJul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 18, 2026 · 89 observations · Updated Oc…pluginstats.com
@boundaries/eslint-plugin weekly downloads on npm, last 90 days: 14,875 weekly downloads as of Oct 18, 2026, +7.8% over 90 days.

7/30/90-day growth

@boundaries/eslint-plugin weekly downloads growth on npm: -50.3% over 7 days, -35.6% over 30 days, +7.8% over 90 days.@boundaries/eslint-pluginWeekly downloads growth on npm14,875downloads / week now7-day growth-15,077 weekly downloads-50.3%30-day growth-8,215 weekly downloads-35.6%90-day growth+1,077 weekly downloads+7.8%Growth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
@boundaries/eslint-plugin weekly downloads growth on npm: -50.3% over 7 days, -35.6% over 30 days, +7.8% over 90 days.

Ranking history

@boundaries/eslint-plugin npm ranking history: currently #858 (by weekly downloads).@boundaries/eslint-pluginnpm ranking · by weekly downloads · Last 90 days#858current rank#850#860#870#880#890#900Jul 22Aug 6Aug 21Sep 5Sep 20Oct 5Oct 20rankOct 18, 2026 – Oct 20, 2026 · 3 observations · Updated Oct 18, 2026pluginstats.com
@boundaries/eslint-plugin npm ranking history: currently #858 (by weekly downloads).

Listing placement

All npm2,320 listings · 116 pages · 1,161 shown · page 43, #19 (overall #859)
All npm: every listing in weekly downloads order

Listing placement

ESLint plugins256 listings · 13 pages · page 11, #18 (overall #218)
ESLint plugins: every listing in weekly downloads order

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.

Each band is one page of 20. Weekly downloads on a linear 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.

Recent observations

Full history (122)
Recent weekly downloads observations for @boundaries/eslint-plugin
Date (UTC)Weekly downloadsChange vs. previous
14,875+4.4K
10,474-1.8K
12,255+384
11,871-5.6K
17,506-9.8K
27,2840
27,284-2.7K
29,952-2.9K
32,862-2.1K
34,959-1.7K
36,639-957
37,596+3K
34,596-9.3K
43,889—

Similar npm ESLint plugins plugins

All 20 @boundaries/eslint-plugin alternatives

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/@boundaries/eslint-plugin. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.