Skip to content

Production-ready API rate limiting and abuse detection service using Node.js, TypeScript, Redis, and Docker.

License

Notifications You must be signed in to change notification settings

DIYA73/api-rate-guardian

Repository files navigation

🚀 API Rate Guardian

A production-ready backend API built with Node.js + TypeScript for securing services using authentication, rate limiting, and Redis-powered controls.

This project demonstrates real-world backend engineering, security patterns, and admin tooling.


✨ Features

  • 🔐 JWT-based Admin Authentication
  • 🚦 Redis-backed Rate Limiting
  • 🛑 IP Ban / Unban System
  • 📊 Redis Monitoring & Stats API
  • 🧭 Admin Dashboard Endpoint
  • 🐳 Docker & Docker Compose support
  • 🧪 Ready for testing & production hardening

🛠 Tech Stack

  • Node.js
  • Express
  • TypeScript
  • Redis (ioredis)
  • JWT (jsonwebtoken)
  • Docker
  • Thunder Client / REST

🧱 Architecture

Client → Express API
→ JWT Auth Middleware
→ Rate Limiter (Redis)
→ Admin Routes (JWT protected)
→ Redis (stats, bans, counters)

Redis is used as a centralized store to ensure accurate rate limiting across instances.


📸 Screenshots

🔑 Admin Login

Admin Login

📊 Redis Stats

Redis Stats

🧭 Admin Dashboard

Admin Dashboard


🚀 Live Demo

Backend API: https://api-rate-guardian-1.onrender.com

Admin UI runs locally or can be deployed separately (Vercel).

📦 Installation (Local)


git clone https://github.com/DIYA73/api-rate-guardian.git
cd api-rate-guardian
npm install

About

Production-ready API rate limiting and abuse detection service using Node.js, TypeScript, Redis, and Docker.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors