github.com/ulule/limiter

Limiter

Dead simple rate limit middleware for Go.

77

Decision Signals

Health score 77/100, confidence 100/100.

Strong
Maintenance 38
Adoption 100
Security 92
Maturity 90
Developer DX 83
Confidence 100

Install

go get github.com/ulule/limiter

Package Data

updated Jun 9, 2026
Latest versionv2.2.2+incompatible
Imported by449 packages
Stars2.3K
Forks162
Last activity1 years ago
Latest releasev3.11.2 (3 years ago)
LicenseMIT
Known vuln records0

API Surface

29 symbols
SymbolKindSynopsis
Context Type type Context struct{ ... }
Context.Limit Field Limit int64
Context.Reached Field Reached bool
Context.Remaining Field Remaining int64
Context.Reset Field Reset int64
Limiter Type type Limiter struct{ ... }
Limiter.Get Method func (limiter *Limiter) Get(ctx context.Context, key string) (Context, error)
Limiter.Peek Method func (limiter *Limiter) Peek(ctx context.Context, key string) (Context, error)
Limiter.Rate Field Rate Rate
Limiter.Store Field Store Store
New Function func New(store Store, rate Rate) *Limiter
Rate Type type Rate struct{ ... }

Similar Packages

Go Rate Limiting Libraries

#1 go-limiter

Package limiter defines rate limiting systems.

Go Rate Limiting Libraries 0 stars 66 imported-by 75% confidence
63

#2 httprate

Go Rate Limiting Libraries 0 stars 256 imported-by 75% confidence
57

#3 limiter

Package limiter defines shared types and constants used by all limiter sub-packages (conn, rate, traffic).

Go Rate Limiting Libraries 0 stars 0 imported-by 55% confidence
57

#4 ratelimit

Go Rate Limiting Libraries 0 stars 984 imported-by 75% confidence
54

#5 caddy-waf

Package caddywaf implements a Web Application Firewall (WAF) middleware for Caddy.

Go Rate Limiting Libraries 0 stars 0 imported-by 40% confidence
43