The package `limiting-middleware` provides a simple, IP-based rate limiting solution for Express applications, restricting client requests within a defined time frame. Currently at version 1.3.2, the module has not received updates since 2019, making it an abandoned project. Its initial development was for personal use, which explains its limited feature set compared to more actively maintained and mature alternatives like `express-rate-limit`. Key limitations include exclusive reliance on CommonJS `require()` syntax, absence of ESM support, and a basic in-memory store, rendering it unsuitable for production environments requiring scalability, advanced configurations, or robust security updates.
npm install limiting-middlewareVerified import paths — ran on the pinned version, not inferred.
Demonstrates how to initialize and apply the IP-based rate limiting middleware to an Express application.
Migrate to actively maintained alternatives such as `express-rate-limit` (for blocking) or `express-slow-down` (for throttling).
Ensure your project uses CommonJS or continue to use `const LimitingMiddleware = require('limiting-middleware');` even in an ESM project if your build setup supports CJS interoperability (though generally not recommended for new projects).For production deployments with multiple instances, use a rate limiting solution that supports external stores (e.g., Redis) for shared state, such as `express-rate-limit` with a Redis store.
Evaluate if more feature-rich alternatives like `express-rate-limit` or `express-slow-down` provide the necessary advanced configurations for your use case.
Instantiate the middleware with `new LimitingMiddleware({...})` before calling `.limitByIp()`. Correct usage: `app.use(new LimitingMiddleware({ limit: 100, resetInterval: 1200000 }).limitByIp());`Use CommonJS `require()` syntax instead: `const LimitingMiddleware = require('limiting-middleware');`This package is not designed for distributed rate limiting. Consider migrating to `express-rate-limit`, which supports various external stores like Redis to synchronize rate limits across multiple instances.
No dependency data recorded yet.