Skip to content

RateLimitAPI/packages

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RateLimitAPI

GitHub Actions publish workflow status License: MIT

RateLimitAPI provides powerful rate limiting middleware for protecting your APIs from abuse. This repository contains official client libraries for multiple programming languages.

These packages are currently in early development and not ready for production use.

Available Packages

Language Package Version Documentation
JavaScript/TypeScript npm: ratelimitapi npm version Node.js Documentation
Python PyPI: ratelimitapi PyPI version Python Documentation

Features

  • Easy-to-use middleware for popular frameworks
  • Flexible rate limit configuration
  • Customizable response formats for rate limit headers
  • Detailed analytics and monitoring
  • Protection against common abuse patterns

Quick Start

Node.js

npm install ratelimitapi
# or
yarn add ratelimitapi
const rateLimitResponse = await isRateLimited(request, "rlimit_your_api_token");
if (rateLimitResponse) {
  return rateLimitResponse; // Return the 429 response if rate-limited
}
// Continue with normal request handling if not rate-limited

Python

pip install ratelimitapi
# or
poetry add ratelimitapi
from ratelimitapi import is_rate_limited

limited_response = is_rate_limited(request, "rlimit_your_api_token")
if limited_response:
    response_body, status_code, headers = limited_response
    # Return the 429 response if rate-limited
    return create_response(response_body, status_code, headers)
    
# Continue with normal request handling if not rate-limited

Documentation

For more detailed documentation:

Full API documentation will be available at RateLimitAPI.com upon official release.

Development

This repository is organized as a monorepo with packages for different languages:

packages/
  ├── node/    # JavaScript/TypeScript implementation
  └── python/  # Python implementation

To build a package:

# Node.js
npm run build

# Python
npm run build-python

License

This project is licensed under the MIT License - see the LICENSE file for details.

Stay Updated

  • Star our GitHub repository
  • Follow our progress on Twitter (coming soon)
  • Join our community Discord (coming soon)

Contact

For more information, please visit RateLimitAPI.com when it's available.