gRPC service door for ThrottleKit — run the rate-limiting core (GALE/TALE engines) as a network service for polyglot clients. Current stable version v0.1.0-experimental.7, pre-1.0 experimental release. Key differentiator: exposes the exact same decision logic as the in-process library over gRPC, so clients in any language get identical rate-limit behavior without reimplementing algorithms. Supports multiple backing stores (memory, Redis, Postgres, DynamoDB) with bit-identical decisions. Release cadence: experimental, evolves independently from core throttlekit (which is 1.0 and frozen).
npm install throttlekit-serverNo compatibility data collected yet for this library.
Verified import paths — ran on the pinned version, not inferred.
Starts the gRPC server with config, port, and optional Redis store. Uses environment variables for auth.
Use Node >=18 and ESM imports.
Pin to exact version and test upgrades.
Use --redis, --postgres-url, or --store dynamodb for fleet coordination.
Do not attempt to use those stores with this package; run ThrottleKit inside those runtimes instead.
Check the 'allowed' field in the Decision response; do not treat denials as gRPC errors.
Use ESM import syntax: import { startServer } from 'throttlekit-server'Change port with --port <number> or kill the existing process on that port.
Create .throttlekit.yaml in the working directory or pass explicit path with --config.
Set --store dynamodb or rely on URL inference (--postgres-url, --redis).