BetterStack is a modern, full-stack website uptime monitoring platform designed with scalability and real-time observability in mind. It features:
- π Real-time backend using Redis Streams
- π Distributed, region-based monitoring with auto-scaling workers
- π₯οΈ A sleek dashboard built with Next.js + Tailwind CSS
- βοΈ Background workers that track uptime and response times
- π‘ Periodic queueing of websites via a pusher service
All wrapped in a modular monorepo powered by Turborepo.
π The system is built with clear separation of concerns:
- Frontend: Dashboard and monitoring views
- Backend: API layer for websites/regions
- Pusher: Periodically adds websites to Redis queue
- Worker: Distributed consumers processing uptime checks
| Layer | Tech |
|---|---|
| Monorepo | Turborepo |
| Frontend | Next.js, Tailwind CSS |
| Backend | Express.js |
| Queue | Redis Streams |
| Database | PostgreSQL via Prisma ORM |
| Worker | Node.js β for distributed region-based website checks |
| Pusher | Node.js β queues websites every 3 minutes |
π Watch BetterStack in Action (YouTube)
- β Add regions and websites dynamically
- π Automatically create consumer groups for new regions
- π Launch new workers per region using Redis
XGROUP - β± Real-time monitoring with response time metrics
- π Scalable architecture with separate services for pushing, processing, and viewing data


