{"repo":"animir/node-rate-limiter-flexible","free":true,"listed":false,"github":"https://github.com/animir/node-rate-limiter-flexible","clone":"git clone https://github.com/animir/node-rate-limiter-flexible.git","description":"Atomic and non-atomic counters and rate limiting tools. Limit resource access at any scale.","language":"JavaScript","stars":3582,"topics":["security","limit","ratelimter","bruteforce","throttle","koa","express","hapi","nestjs","rate-limiting"],"license":"ISC","category":"security-tools","readme_excerpt":"[![node version][node-image]][node-url] [node-image]: https://img.shields.io/badge/node.js-%3E= 20.0-green.svg?style=flat-square [node-url]: http://nodejs.org/download/ node-rate-limiter-flexible rate-limiter-flexible counts and limits the number of events and protects from DoS and brute force attacks at any scale. It works with Valkey , Redis , Prisma , DynamoDB , process Memory , Cluster or PM2 , Memcached , MongoDB , MySQL , SQLite , and PostgreSQL . Memory limiter also works in the browser. AI tools See llms.txt and CONTEXT.md for LLM-friendly documentation. Atomic increments. All operations in memory or distributed environment use atomic increments against race conditions. Fast. Average request takes 0.7ms in Cluster and 2.5ms in Distributed application. See benchmarks. Flexible. Combine limiters, block key for some duration, delay actions, manage failover with insurance options, configure smart key blocking in memory and many others. Ready for growth. It provides a unified API for all limiters. Whenever your application grows, it is ready. Prepare your limiters in minutes. Friendly. No matter which node package you prefer: valkey-glide or iovalkey , redis or ioredis , sequelize / typeorm or knex , memcached , native driver or mongoose . It works with all of them. In-memory blocks. Avoid extra requests to store with inMemoryBlockOnConsumed. Deno compatible See this example The Flexible Fixed Window algorithm starts counting from the moment a request is received, diversif","default_branch":null,"files":null,"tree":[],"storefront":"/r/animir","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/animir/node-rate-limiter-flexible/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}