{"id":44890,"library":"express-rate-limit-redis","title":"express-rate-limit-redis","description":"An Express rate-limiting middleware using Redis as storage. Current version 0.0.4. Low-traffic, single-contributor project. Allows per-route rate limits with configurable window and max requests. Uses Redis for distributed state. No active maintenance since 2019. Provides TypeScript types, but minimal documentation.","status":"maintenance","version":"0.0.4","language":"javascript","source_language":"en","source_url":"https://github.com/timqian/express-rate-limit-redis","tags":["javascript","typescript"],"install":[{"cmd":"npm install express-rate-limit-redis","lang":"bash","label":"npm"},{"cmd":"yarn add express-rate-limit-redis","lang":"bash","label":"yarn"},{"cmd":"pnpm add express-rate-limit-redis","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency required as middleware","package":"express","optional":false},{"reason":"Redis client for storage","package":"ioredis","optional":true}],"imports":[{"note":"Package is CJS only; ESM import may fail without bundler.","wrong":"import RateLimiter from 'express-rate-limit-redis'","symbol":"default","correct":"const RateLimiter = require('express-rate-limit-redis')"},{"note":"Type import for TypeScript users, available since types shipped.","wrong":"","symbol":"RateLimiterOptions","correct":"import { RateLimiterOptions } from 'express-rate-limit-redis'"}],"quickstart":{"code":"const express = require('express');\nconst RateLimiter = require('express-rate-limit-redis');\nconst Redis = require('ioredis');\nconst client = new Redis();\nconst app = express();\n\nconst limiter = RateLimiter({\n  client,\n  id: 'verify-phone-number',\n  max: 3,\n  windowMs: 60 * 1000,\n});\n\napp.use('/verify-phone-number', limiter);\napp.get('/verify-phone-number', async (req, res) => {\n  res.json({ msg: 'ok' });\n});\n\napp.listen(8080);","lang":"javascript","description":"Sets up Express server with Redis-backed rate limiter on a route, limiting to 3 requests per minute."},"warnings":[{"fix":"Update to 0.0.4 and pass options object with 'client', 'id', 'max', 'windowMs'.","message":"Version 0.0.4 uses a different signature than earlier versions.","severity":"breaking","affected_versions":"<0.0.4"},{"fix":"Consider using 'express-rate-limit' with 'rate-limit-redis' instead.","message":"No updates since 2019; rely at your own risk.","severity":"deprecated","affected_versions":">=0.0.0"},{"fix":"Add error handling to middleware creation.","message":"Timeout errors can occur if Redis is not reachable.","severity":"gotcha","affected_versions":">=0.0.0"}],"env_vars":null,"search_vec":"'0.0.4':18 '2019':47 'activ':44 'allow':26 'configur':33 'contributor':24 'current':16 'distribut':41 'document':53 'express':2,7 'express-rate-limit-redi':1 'javascript':54 'limit':4,10,31 'low':20 'low-traff':19 'mainten':45 'max':36 'middlewar':11 'minim':52 'per':28 'per-rout':27 'project':25 'provid':48 'rate':3,9,30 'rate-limit':8 'redi':5,13,39 'request':37 'rout':29 'sinc':46 'singl':23 'single-contributor':22 'state':42 'storag':15 'traffic':21 'type':50 'typescript':49,55 'use':12,38 'version':17 'window':34","created_at":"2026-06-07T12:52:20.755456+00:00","updated_at":"2026-06-07T12:52:20.755456+00:00","problems":[{"fix":"Use `const RateLimiter = require('express-rate-limit-redis')`.","cause":"Incorrect import or require.","error":"Error: RateLimiter is not a function"},{"fix":"Pass an object with required properties: { client, id, max, windowMs }.","cause":"Missing or malformed options object.","error":"TypeError: Cannot destructure property 'client' of 'options' as it is undefined."}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"https://github.com/timqian/express-rate-limit-redis#readme","github":"https://github.com/timqian/express-rate-limit-redis","docs":null,"changelog":null,"pypi":null,"npm":"express-rate-limit-redis","openapi_spec":null,"status_page":null,"smithery":null,"categories":["security"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-07","next_check":"2026-09-05","install_tag":null}}