Back to Blog
Blog Post

Halt is live on npm and PyPI as halt-rate

You can now install Halt with a single command in both ecosystems here is everything that ships in halt-rate 0.1.1 and how to get started in under a minute.

The Halt Team
#release#npm#pypi#halt-rate#getting-started
Halt is live on npm and PyPI as halt-rate

Halt is live on npm and PyPI πŸŽ‰

Halt is now published in both package registries under the name halt-rate:

One command and you have production-style rate limiting in your service:

#

A note on names

The package is halt-rate, but the mental model stays "Halt":

  • In Python, you install halt-rate and import halt the module name is unchanged:
f
  • In TypeScript, the import specifier is the package name, with framework adapters as subpath exports:
i

What ships in 0.1.1

  • Four algorithms Token Bucket, Fixed Window, Sliding Window, Leaky Bucket
  • Key strategies per-IP, per-user, per-API-key, and composite keys like user:ip
  • Framework adapters FastAPI, Flask, and Django in Python; Express and Next.js (App Router, Pages Router, and middleware) in TypeScript
  • Safe defaults automatic health-check exemptions, private IP exemptions, and custom exemption lists
  • Standard headers RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset, and Retry-After on 429s, so well-behaved clients back off automatically

Sixty seconds to a protected endpoint

Express

i

FastAPI

f

That's it every route now answers with rate-limit headers, and abusive bursts get a clean 429 with Retry-After before they ever reach your handlers.

What's next

The 0.1.x line focuses on hardening the core and the Redis store. If you hit anything odd, open an issue on GitHub and if Halt saves you from writing one more bespoke rate limiter, a star is always appreciated.

  • Browse the docs for algorithms, stores, and policies
  • Copy a runnable setup from the examples
  • Track releases on the changelog