A self-hosted web application for monitoring HTTP(S) URL endpoints with cron-based scheduling, a web UI, and REST API.
Ciao is an open-source, self-hosted web application that monitors HTTP and HTTPS URL endpoints for their status. It schedules periodic checks using cron syntax, detects when services go down or recover, and sends notifications via email or webhooks. It solves the problem of needing a simple, internal monitoring solution without external dependencies or SaaS costs.
System administrators, DevOps engineers, and developers who need to monitor the uptime of internal or external web services and APIs within their own infrastructure.
Developers choose Ciao because it's entirely self-contained, easy to deploy with Docker, has no external database requirements, and offers both a web UI and a REST API for flexibility. Its focus on simplicity and maintainability makes it a lightweight alternative to heavier monitoring systems.
HTTP checks & tests (private & public) monitoring - check the status of your URL
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The README shows a one-line Docker run command for instant setup, and Docker Compose and Helm charts are provided for easy orchestration.
Uses an internal SQLite database, eliminating the need for separate database servers or caches, aligning with its 12-factor app philosophy for minimal maintenance.
Supports standard cron syntax for check intervals, from every minute to daily, allowing precise control over monitoring frequency as detailed in the features.
Sends alerts via SMTP email and configurable webhooks for services like Slack or Rocket.Chat, with dedicated configuration guides for each.
Automatically checks SSL/TLS certificates for expiration daily and alerts if they expire within 30 days, a feature added in version 1.9.0.
Relies on SQLite, which may struggle with high volumes of checks or concurrent requests, making it unsuitable for enterprise-scale monitoring.
Offers only HTTP Basic Auth for security, lacking modern options like OAuth, SSO, or multi-user role management, which limits team collaboration.
Notifications are sent on status changes but lack advanced features like alert silencing, complex rules, or integration with incident management systems.