All Projects → eddiejibson → Limitrr

eddiejibson / Limitrr

Licence: mit
Light NodeJS rate limiting and response delaying using Redis - including Express middleware.

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Limitrr

Node Rate Limiter Flexible
Node.js rate limit requests by key with atomic increments in single process or distributed environment.
Stars: ✭ 1,950 (+860.59%)
Mutual labels:  authorization, rate
Metricio
⚡ Simple framework for easily creating dashboards to display metrics ⚡
Stars: ✭ 142 (-30.05%)
Mutual labels:  redis, expressjs
Njsscan
njsscan is a semantic aware SAST tool that can find insecure code patterns in your Node.js applications.
Stars: ✭ 128 (-36.95%)
Mutual labels:  expressjs, security-tools
Nginx Lua Redis Rate Measuring
A lua library to provide distributed rate measurement using nginx + redis, you can use it to do a throttling system within many nodes.
Stars: ✭ 109 (-46.31%)
Mutual labels:  rate-limiter, redis
Redis Adapter
Redis adapter for Casbin
Stars: ✭ 167 (-17.73%)
Mutual labels:  redis, authorization
Tedis
redis client with typescript and esnext for nodejs
Stars: ✭ 109 (-46.31%)
Mutual labels:  promise, redis
Personal Security Checklist
🔒 A curated checklist of 300+ tips for protecting digital security and privacy in 2021
Stars: ✭ 2,388 (+1076.35%)
Mutual labels:  security-tools, protection
Flowa
🔥Service level control flow for Node.js
Stars: ✭ 66 (-67.49%)
Mutual labels:  promise, expressjs
Hydra Express
A module which wraps Hydra and ExpressJS into a library for building distributed applications - such as microservices
Stars: ✭ 166 (-18.23%)
Mutual labels:  redis, expressjs
Portara
Portara directive is a rate limiter / throttler for GraphQL
Stars: ✭ 158 (-22.17%)
Mutual labels:  rate-limiter, redis
Express Jwt
An example API for creating/verifying json web tokens
Stars: ✭ 105 (-48.28%)
Mutual labels:  expressjs, authorization
Antiddos System
🛡️⚔️ Protect your web app from DDOS attack or the Dead Ping + CAPTCHA VERIFICATION in one line!
Stars: ✭ 173 (-14.78%)
Mutual labels:  security-tools, protection
Production Ready Expressjs Server
Express.js server that implements production-ready error handling and logging following latest best practices.
Stars: ✭ 101 (-50.25%)
Mutual labels:  redis, expressjs
Django Bruteforce Protection
Bruteforce protection for Django projects based on Redis. Simple, powerful, extendable.
Stars: ✭ 110 (-45.81%)
Mutual labels:  redis, protection
Redisratelimiter
Redis Based API Access Rate Limiter
Stars: ✭ 80 (-60.59%)
Mutual labels:  redis, rate
Nosqlmap
Automated NoSQL database enumeration and web application exploitation tool.
Stars: ✭ 1,928 (+849.75%)
Mutual labels:  redis, security-tools
X Proxies
Usable ip proxies, crawling from some proxy websites.
Stars: ✭ 53 (-73.89%)
Mutual labels:  redis, ip
Webauthn
W3C Web Authentication API Relying Party for Node.js and Express
Stars: ✭ 61 (-69.95%)
Mutual labels:  expressjs, express-middleware
Express Mongodb Rest Api Boilerplate
A boilerplate for Node.js apps / Rest API / Authentication from scratch - express, mongodb (mongoose).
Stars: ✭ 153 (-24.63%)
Mutual labels:  redis, authorization
Spoon
🥄 A package for building specific Proxy Pool for different Sites.
Stars: ✭ 173 (-14.78%)
Mutual labels:  redis, ip
chae

NodeJS rate limiting and response delaying using Redis - includes Express middleware.

Official Documentation (limitrr.js.org)

Limitrr assists with the rate-limiting and "delaying of responses" for various routes within your NodeJS application. Unlike other similar packages, this utility allows the user to limit not only by the number of requests but also the number of completed actions (e.g allowing a certain amount of accounts to be successfully created within a timespan) and have such restricted with custom options. As well as this, custom discriminators are possible - you no longer have to limit by just the user's IP. Limitrr can also delay responses after a certain amount of requests have been made - you don't have to just rate-limit potentially malicious requests, you can delay them instead or as well as. Included also within this package are various middleware functions for Express. However, the core functions work perfectly fine if you're not using such a package and chose to do something else, instead.

I've effectively released a similiar limitrr library, but in PHP. Check it out here

If you appreciate this project, please 🌟 it on GitHub.

Pull Requests are welcomed

Roadmap

  • [x] Create multiple route limits (separate expiry times e.t.c) without having to initialize the Limitrr class multiple times
  • [x] Return headers to user with rate limiting details - how many requests/actions remain before restrictions are put in place, how long before the values expire and how many requests/actions are allowed per that route.
  • [x] Unit Tests
  • [x] Pass parameters into functions via an object
  • [x] Ability to slow down responses after a certain amount of requests
  • [x] Extend options further to allow things like IP exclusion (asides from just local).

Documentation

Access the documentation here: https://limitrr.js.org

Contributors

This project exists thanks to all the people who contribute.

License

FOSSA Status

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].