Skip to content

A configurable rate limiter that can apply rate limiting on individual APIs with individual rules.

License

Notifications You must be signed in to change notification settings

x-sushant-x/Rate-Shield

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 RateShield

A fully customizable rate limiter designed to apply rate limiting on individual APIs with specific rules.

📊 Dashboard Overview

RateShield Dashboard

RateShield Edit Rule


🎯 Why RateShield?

Why not? With some free time on hand, RateShield was created to explore the potential of building a versatile rate-limiting solution. What started as a side project is evolving into a powerful tool for developers.


🌟 Key Features

  • Customizable Limiting:
    Tailor rate limiting rules to each API endpoint according to your needs.

  • Intuitive Dashboard:
    A user-friendly interface to monitor and manage all your rate limits effectively.

  • Easy Integration:
    Plug-and-play middleware that seamlessly integrates into your existing infrastructure.


⚙️ Use Cases

  • Preventing Abuse:
    Control the number of requests your APIs can handle to prevent misuse and malicious activities.

  • Cost Management:
    Manage third-party API calls efficiently to avoid unexpected overages.


🚀 Supported Rate Limiting Algorithms

  • Token Bucket
  • Fixed Window Counter
  • Sliding Window

🪧 Usage Guide

Check out this document.


How it works?


⚠️ Important Information

  • Current Limitation:
    At present, RateShield only supports the Token Bucket, Fixed Window Counter algorithm & Sliding Window Counter, which may not fit all use cases.

v2 Roadmap

  • Cache rules locally for better performance.
  • Add Sliding Window rate limiting strategy.
  • Slack integration.
  • End-2-End Testing

🤝 Contributing

Interested in contributing? We'd love your help! Check out our Contribution Guidelines to get started.


About

A configurable rate limiter that can apply rate limiting on individual APIs with individual rules.

Topics

Resources

License

Stars

Watchers

Forks