Efficiently manages API requests in frontend libraries
A generic rate limiter for the web and node.js. Useful for API clients, web crawling, or other tasks that need to be throttled
Node.js atomic and non-atomic counters, rate limiting tools, protection from DoS and brute-force attacks at scale
Basic IP rate-limiting middleware for Express. Use to limit repeated requests to public APIs and/or endpoints such as password reset.
Rate limit middleware for Hono.
Simple in-memory rate-limit for Node.
Rate limiter that supports a rolling window, either in-memory or backed by Redis
<div align="center">
Highly configurable and extensible rate limiter library
A rate limiter component for Convex. Define and use application-layer rate limits. Type-safe, transactional, fair, safe, and configurable sharding to scale.
Cloudflare stores and helper functions for hono-rate-limiter.
This plugins uses [`graphql-rate-limit`](https://github.com/teamplanes/graphql-rate-limit#readme) in order to limit the rate of calling queries and mutations.
A modular rate limiter for SvelteKit. Use in password resets, account registration, etc.
IP rate-limiting middleware for Koajs 2. Use to limit repeated requests to APIs and/or endpoints such as password reset.
A generic rate limiter for the web and node.js. Useful for API clients, web crawling, or other tasks that need to be throttled
Connect rate limiter
Fixed window rate-limiting directive for GraphQL. Use to limit repeated requests to queries and mutations.
Rate limiting package for AdonisJS framework
JS/TS library that allows you to set per - time, per - user or per - anything limits for calling Firebase cloud functions
Promise-based utility to make sure you don’t call rate-limited APIs too quickly.
asynchronous function queue with adjustable concurrency
High-performance, flexible rate limiting for TypeScript and Bun
rate limiter middleware for express applications
A low overhead rate limiter for your routes
Various locking utilities for Ruby using Redis, including a mutex, a semaphore, and a token bucket rate limiter
Provides utilities that help with repeating tasks and rate limits
Utilities like caching, rate limiting, ... for usage in combination with the scrobbler gem. These will be not included in the main gem as they provide extra functionality that is not always required.
# Introduction Welcome to the reference for the Lishogi API! Lishogi is free/libre, open-source shogi server forked from lichess powered by volunteers and donations. Currently this page is a work in progress, certain information here might be wrong and incorrect! Expect it to be done during 2022. - Get help in the [Lishogi Discord channel](https://discord.gg/YFtpMGg3rR) - [Contribute to this documentation on Github](https://github.com/WandererXII/lishogi/blob/master/public/doc/lishogi-api.yaml) - Check out [Lishogi widgets to embed in your website](https://lishogi.org/developers) ## Endpoint All requests go to `https://lishogi.org` (unless otherwise specified). ## Rate limiting All requests are rate limited using various strategies, to ensure the API remains responsive for everyone. Only make one request at a time. If you receive an HTTP response with a [429 status](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#429), please wait a full minute before resuming API usage. ## Streaming with ND-JSON Some API endpoints stream their responses as [Newline Delimited JSON a.k.a. **nd-json**](http://ndjson.org/), with one JSON object per line. Here's a [JavaScript utility function (for lichess)](https://gist.github.com/ornicar/a097406810939cf7be1df8ea30e94f3e) to help reading NDJSON streamed responses.