Enterprise API gateways like Kong or AWS API Gateway are incredibly powerful—and incredibly exhausting. They require dedicated DevOps teams, complex YAML configurations, and steep learning curves just to rate-limit a simple endpoint.
OmniGate is a drop-in, headless API Gateway built entirely on Next.js 15 and Vercel Edge. It gives indie hackers and mid-sized teams enterprise-grade infrastructure—global rate limiting, sub-10ms edge caching, and real-time telemetry—deployed in exactly 60 seconds.
Stop wrestling with infrastructure. Build the shield first, then build your app.
OmniGate doesn't just route traffic; it acts as a shock absorber for your backend.
- 🛡️ Zero-Trust Edge Rate Limiting: Prevent accidental (or malicious) DDoS attacks with strict sliding-window rate limits evaluated at the Vercel Edge using Upstash Redis.
- ⚡ Sub-10ms Edge Caching: Intercept repetitive
GETrequests at the edge. Serve cached responses in milliseconds without ever waking up your main database. - 🔄 Zero-Downtime Auto-Retries: If your target backend temporarily crashes (502/503), OmniGate catches the failure, holds the connection, and silently retries the request in the background. Your users never see the error.
- 🔥 Native API Sandbox: A world-class, Stripe-inspired developer experience. Generate a key and test your proxy routes directly inside the dark-mode dashboard UI.
- 📊 Real-Time Firehose: Asynchronous, non-blocking telemetry securely logs latency, status codes, and traffic data into Tinybird without adding a single millisecond to your request times.
OmniGate utilizes a globally distributed architecture to intercept traffic as physically close to your users as possible.
graph TD
classDef edge fill:#001133,stroke:#0088ff,stroke-width:2px,color:#fff;
classDef good fill:#002200,stroke:#00ff00,stroke-width:2px,color:#fff;
classDef bad fill:#3f0000,stroke:#ff4444,stroke-width:2px,color:#fff;
Client[User Request] -->|Hits Edge| Proxy{OmniGate Edge}:::edge
Proxy -->|Check Limits| Redis[(Upstash Redis)]
Proxy -->|Log Traffic Async| Tinybird[(Tinybird Analytics)]
Proxy -->|Limit Reached| 429[🛑 429 Too Many Requests]:::bad
Proxy -->|Valid & Cached| CacheHIT[⚡ Serve 10ms Cache]:::good
Proxy -->|Valid & New| Backend[🎯 Target Backend API]
OmniGate is built on the bleeding edge of serverless technology:
- Framework: Next.js 15 (App Router & Edge Runtime)
- Database / Auth: Supabase (PostgreSQL)
- In-Memory Cache: Upstash (Serverless Redis)
- Telemetry Data Warehouse: Tinybird (ClickHouse)
- Styling: Tailwind CSS, Framer Motion, Lucide Icons, Sonner
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
Distributed under the MIT License. See LICENSE for more information.