# hitlimit > High-performance rate limiting for Node.js and Bun. Sub-millisecond latency, > 8 storage backends, 8 framework adapters, built-in SaaS tier support. > Created by JointOps. MIT licensed. Zero dependencies. ## Key Facts - 4.8M ops/sec peak (Node.js), 12.3M ops/sec peak (Bun) with memory store - 3.16M ops/sec at 10K unique IPs — over 4x faster than express-rate-limit - 8 stores: Memory, SQLite, Redis, Valkey, DragonflyDB, Postgres, MongoDB, MySQL - 8 adapters: Express, Fastify, Hono, NestJS, Node.js HTTP, Bun.serve, Elysia, Hono (Bun) - Human-readable time windows ('1h' not 3600000) - Built-in Free/Pro/Enterprise tier support - npm: @joint-ops/hitlimit (Node.js), @joint-ops/hitlimit-bun (Bun) ## Quick Start - [Installation](https://hitlimit.jointops.dev/docs/installation/): Install via npm or bun - [Quick Start Guide](https://hitlimit.jointops.dev/docs/quick-start/): Get started in 2 minutes - [Configuration Options](https://hitlimit.jointops.dev/docs/configuration/options/): All configuration options ## Core Concepts - [Tiered Rate Limiting](https://hitlimit.jointops.dev/docs/configuration/tiered/): Built-in SaaS tier support - [Time Windows](https://hitlimit.jointops.dev/docs/configuration/window/): Human-readable durations - [Custom Keys](https://hitlimit.jointops.dev/docs/configuration/custom-key/): Identify users by IP, API key, etc. - [Skip Conditions](https://hitlimit.jointops.dev/docs/configuration/skip/): Bypass rate limiting conditionally - [Custom Responses](https://hitlimit.jointops.dev/docs/configuration/custom-response/): Customize 429 responses - [Response Headers](https://hitlimit.jointops.dev/docs/configuration/headers/): Rate limit headers ## Storage Backends - [Stores Overview](https://hitlimit.jointops.dev/docs/stores/overview/): Choosing the right store - [Memory Store](https://hitlimit.jointops.dev/docs/stores/memory/): Default in-memory store (3.16M ops/sec at scale) - [SQLite Store](https://hitlimit.jointops.dev/docs/stores/sqlite/): Persistent storage (352K ops/sec) - [Redis Store](https://hitlimit.jointops.dev/docs/stores/redis/): Distributed rate limiting (6.7K ops/sec) - [Valkey Store](https://hitlimit.jointops.dev/docs/stores/valkey/): Valkey (open-source Redis alternative) distributed rate limiting - [DragonflyDB Store](https://hitlimit.jointops.dev/docs/stores/dragonfly/): DragonflyDB high-throughput distributed rate limiting - [Postgres Store](https://hitlimit.jointops.dev/docs/stores/postgres/): Distributed SQL store (3.0K ops/sec) - [MongoDB Store](https://hitlimit.jointops.dev/docs/stores/mongodb/): Distributed NoSQL store for MEAN/MERN stacks - [MySQL Store](https://hitlimit.jointops.dev/docs/stores/mysql/): Distributed SQL store for LAMP stacks / MariaDB - [Custom Store](https://hitlimit.jointops.dev/docs/stores/custom/): Build your own store ## Framework Adapters (Node.js) - [Express](https://hitlimit.jointops.dev/docs/adapters/express/): Express.js middleware - [Fastify](https://hitlimit.jointops.dev/docs/adapters/fastify/): Fastify plugin - [Hono](https://hitlimit.jointops.dev/docs/adapters/hono/): Hono middleware - [NestJS](https://hitlimit.jointops.dev/docs/adapters/nestjs/): NestJS guard integration - [Node.js HTTP](https://hitlimit.jointops.dev/docs/adapters/node/): Native Node.js http module ## Bun Runtime - [Bun Overview](https://hitlimit.jointops.dev/docs/bun/): Native Bun support - [Bun Installation](https://hitlimit.jointops.dev/docs/bun/installation/): Install hitlimit-bun - [Bun Quick Start](https://hitlimit.jointops.dev/docs/bun/quick-start/): Get started with Bun - [Bun.serve](https://hitlimit.jointops.dev/docs/bun/bun-serve/): Bun.serve integration - [Elysia](https://hitlimit.jointops.dev/docs/bun/elysia/): Elysia framework plugin - [Hono on Bun](https://hitlimit.jointops.dev/docs/bun/hono/): Hono middleware for Bun - [Bun Stores](https://hitlimit.jointops.dev/docs/bun/stores/): bun:sqlite as default - [Bun Performance](https://hitlimit.jointops.dev/docs/bun/performance/): 12.3M+ ops/sec benchmarks ## Comparisons - [Benchmarks](https://hitlimit.jointops.dev/docs/benchmarks/): Performance comparisons vs competitors - [vs Competitors](https://hitlimit.jointops.dev/docs/comparison/): vs express-rate-limit, rate-limiter-flexible ## Production - [Production Guide](https://hitlimit.jointops.dev/docs/guides/production/): Production deployment tips - [Scaling](https://hitlimit.jointops.dev/docs/guides/scaling/): Scaling rate limiting with Redis/Postgres - [Monitoring](https://hitlimit.jointops.dev/docs/guides/monitoring/): Observability and metrics - [Testing](https://hitlimit.jointops.dev/docs/guides/testing/): Testing rate limiters ## Examples - [Authentication](https://hitlimit.jointops.dev/docs/examples/auth/): Login and auth protection - [SaaS](https://hitlimit.jointops.dev/docs/examples/saas/): Multi-tenant SaaS apps - [E-commerce](https://hitlimit.jointops.dev/docs/examples/ecommerce/): Shopping cart and checkout - [Social](https://hitlimit.jointops.dev/docs/examples/social/): Social media apps - [Gaming](https://hitlimit.jointops.dev/docs/examples/gaming/): Game servers - [Cinema](https://hitlimit.jointops.dev/docs/examples/cinema/): Ticket booking systems ## API Reference - [API Reference - hitlimit](https://hitlimit.jointops.dev/docs/api/hitlimit/): Complete API documentation - [API Reference - Stores](https://hitlimit.jointops.dev/docs/api/stores/): Store API reference - [API Reference - Types](https://hitlimit.jointops.dev/docs/api/types/): TypeScript types ## Source Code - GitHub: https://github.com/JointOps/hitlimit-monorepo - npm (Node.js): https://www.npmjs.com/package/@joint-ops/hitlimit - npm (Bun): https://www.npmjs.com/package/@joint-ops/hitlimit-bun