express-rate-limiter-ts
Version:
A powerful, flexible and modern rate limiter middleware for Express.js written in TypeScript.
54 lines (36 loc) • 2.33 kB
Markdown
[](https://www.npmjs.com/package/express-rate-limiter-ts)
[](https://github.com/benemiryilmazer/express-rate-limiter-ts/blob/main/LICENSE)
[](https://www.npmjs.com/package/express-rate-limiter-ts)
[](https://www.typescriptlang.org/)
[](https://github.com/benemiryilmazer/express-rate-limiter-ts/pulls)
# 🚦 express-rate-limiter-ts
Modern, asynchronous and production-ready Express.js rate limiter middleware.
## 🚀 What is it?
**express-rate-limiter-ts** is a powerful, flexible, and type-safe rate limiting solution for Node.js/Express projects. It can be easily used in both development and production environments. Fully compatible with popular databases like Redis, MongoDB, and Postgres.
## 🎯 Key Features
- Asynchronous and production-ready store support (Redis, MongoDB, Postgres, Memory, Dummy)
- Route-based and user-based dynamic limits
- Whitelist, blacklist, ban, and custom response support
- Advanced rate limit headers (X-RateLimit-*, RateLimit-*)
- Live statistics and ban management with admin panel (works with all stores)
- Full TypeScript support and type safety
- Comprehensive tests and documentation
## 📚 Setup & Usage Guides
➡️ For all setup and usage guides, please see the full documentation at:
[Documentation](https://github.com/benemiryilmazer/express-rate-limiter-ts/blob/main/docs/README.md)
## 🤝 Contributing
1. Fork and work on your own branch.
2. Test your changes.
3. Submit a pull request.
For detailed contribution guidelines, see:
- [🤝 Contributing Guide](https://github.com/benemiryilmazer/express-rate-limiter-ts/blob/main/docs/general/CONTRIBUTING.md)
## 📝 License
This project is licensed under the MIT License. See the full license at:
[LICENSE](https://github.com/benemiryilmazer/express-rate-limiter-ts/blob/main/LICENSE)
For any suggestions, contributions, or bug reports, please open an issue on GitHub!