#0412
`datasette-ip-rate-limit` `0.1a0`, path-level IP throttling for crawler abuse
50radar
datasette-ip-rate-limitDatasette plugin — path-level IP throttling rules
Bad crawlers hitting hot paths can now be blocked with 60 req/60s per-rule limits. Path-specific throttling in datasette.yml makes this a practical low-cost ops guardrail.
- Production config reads
Fly-Client-IPand setsmax_keysto 10000. It fits proxy-based deployments without extra app logic. - Exemptions for
/static/*and/-/turnstile*keep assets and bot checks flowing while narrowing protection to expensive routes. - The example rule targets
/global-power-plants/*and/legislators/*: 60 requests per 60s, then 20s blocked. - Still an alpha at
0.1a0, but the config surface is small enough to copy into lightweight self-hosted services quickly.
Source: simonwillison.net/2026/May/14/datasette-ip-rate-limit/#aRead original →