Kuadrant/limitador

Rate limiter

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 2 minutes ago
Added to GitGenius on January 24th, 2025
Created on May 20th, 2020
Open Issues & Pull Requests: 37 (+0)
Number of forks: 35
Total Stargazers: 88 (+0)
Total Subscribers: 8 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 11.3 days
Mean response time: 205.3 days
90th percentile: 794.9 days
Tracked items: 48

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 48% of open issues come from outside the core team, a mix of external reports and the maintainers' own roadmap. Only 2% of issues opened in the past year have been closed. Three people close 94% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 31
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 552 days
Stale 30+ days: 29
Stale 90+ days: 27

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • kind/enhancement (19)
  • enhancement (11)
  • area/library (10)
  • participation/good first issue (10)
  • kind/bug (6)
  • target/later (6)
  • kind/epic (5)
  • participation/help needed (5)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Limitador is a generic rate-limiter written in Rust that functions both as a library and as a standalone service. The project is designed to protect APIs and microservices from excessive traffic by enforcing rate limits at multiple integration points. It exposes HTTP endpoints for applying and observing limits, and additionally provides a gRPC service implementing the Envoy Rate Limit protocol v3, enabling direct integration with Envoy proxies commonly used in service mesh deployments.

The repository serves the cloud-native ecosystem by addressing rate limiting, request throttling, and burst traffic management challenges in distributed systems. It is particularly valuable for Kubernetes environments and API gateway deployments where controlling traffic flow and preventing abuse are critical operational concerns. The project's dual nature as both a library and service makes it flexible for different deployment scenarios, from embedded use within Rust applications to standalone microservice deployments.

The codebase is organized to support multiple use cases. The Rust library component can be integrated directly into applications via Cargo dependencies, while the server component can be deployed as a Docker container or run locally. The project includes comprehensive documentation covering configuration, development setup, and Kubernetes deployment patterns. A testing environment sandbox is provided for experimentation, and Kubernetes-specific deployment guidance is available for production use.

Testing infrastructure includes support for Redis-backed storage, allowing developers to validate distributed rate limiting scenarios. The project maintains flexibility by allowing tests to run with or without Redis, accommodating different development environments. The Apache 2.0 license ensures open-source compatibility and broad adoption potential.

Limitador is explicitly noted as under active development with an unstabilized API, indicating ongoing evolution to meet emerging requirements in the rate limiting and service protection space. Community engagement occurs through the Kubernetes Slack workspace, where discussions about roadmap decisions and technical direction take place, fostering collaborative development aligned with cloud-native standards and practices.