Self-hosted uptime monitoring configured in TypeScript
Define monitors, dashboards, alerts, and incidents as code. Version-controlled alongside your infrastructure. No UI forms—just TypeScript.
Quick Start
Get Pongo running locally in minutes
Configure environment
Copy the example environment file and configure your database:
Pongo uses SQLite by default. For PostgreSQL, set
DATABASE_URL in your .env file.Run migrations and start
Create database tables and start the development server:Open http://localhost:3000 to see your dashboard.
Key Features
Everything you need for modern uptime monitoring
TypeScript Configuration
Define monitors, alerts, and dashboards as TypeScript files. Version-controlled and type-safe.
Public Status Pages
Beautiful status pages with RSS/Atom feeds, uptime charts, and incident timelines.
Smart Alerting
Flap detection, auto-resolve, and webhook notifications to Slack, PagerDuty, and more.
Multi-Region
Deploy schedulers in multiple regions with region-aware alert thresholds.
Data Archival
Automatic S3 archival to Parquet with day-based partitioning for long-term storage.
SLA Tracking
Track uptime percentages, response times, and latency percentiles (P50, P95, P99).
Explore by Topic
Deep dive into Pongo’s capabilities
Core Concepts
Learn about monitors, alerts, dashboards, and notification channels.
Explore concepts
Guides
Step-by-step guides for creating monitors, configuring alerts, and setting up dashboards.
View guides
API Reference
Complete TypeScript API documentation for configuration types and scheduler endpoints.
Browse API
Deployment
Deploy to Vercel, Fly.io, Docker, or self-host with your preferred infrastructure.
Deploy now
Ready to get started?
Follow our quickstart guide to get Pongo running in minutes, or explore deployment options for production.