nowo-tech/uptime-monitor-bundle

Symfony bundle for synthetic uptime monitoring (Uptime Kuma-style): scheduled checks, retention, aggregates, multi-tenant dashboard.

Maintainers

Package info

github.com/nowo-tech/UptimeMonitorBundle

Type:symfony-bundle

pkg:composer/nowo-tech/uptime-monitor-bundle

Transparency log

Fund package maintenance!

HecFranco

Statistics

Installs: 3

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.0.3 2026-07-06 15:36 UTC

This package is auto-updated.

Last update: 2026-07-06 15:36:56 UTC


README

CI Packagist Version Packagist Downloads License PHP Symfony

⭐ Found this useful? Give it a star on GitHub! It helps us maintain and improve the project.

Symfony bundle for synthetic uptime monitoring (Uptime Kuma–style): scheduled checks, detail retention, perpetual aggregates, multi-tenant dashboard with polling sync, public status page, and notifications.

πŸ“‹ Compatible with Symfony 7.4+ and 8.x (PHP 8.2+)

Features

  • βœ… HTTP/HTTPS, TCP, DNS, SSL certificate, and Ping (ICMP) checks
  • βœ… Symfony Scheduler + nowo:uptime:run-due-checks
  • βœ… Doctrine entities: tenant, monitor, check result, aggregates, incidents
  • βœ… YAML retention (detail_days) + aggregates kept forever
  • βœ… REST summary API for dashboard polling (?since= delta support)
  • βœ… Vite + TypeScript dashboard and Chart.js charts
  • βœ… Public status page per tenant (/status/{tenantSlug})
  • βœ… Email, webhook, Slack notifications (on status change)
  • βœ… CRUD for monitors and tenants (Twig UI)
  • βœ… Demo Symfony 7 and 8 (FrankenPHP) β€” see docs/DEMO-FRANKENPHP.md
  • βœ… Mercure real-time dashboard sync (dashboard.sync: mercure)

Quick start

composer require nowo-tech/uptime-monitor-bundle
# config/packages/nowo_uptime_monitor.yaml
nowo_uptime_monitor:
    retention:
        detail_days: 30
php bin/console nowo:uptime:sync-schema
php bin/console nowo:uptime:seed-demo
php bin/console nowo:uptime:run-due-checks

Dashboard: /uptime/{tenantSlug} Β· Status page: /status/{tenantSlug} (default tenant main).

Documentation

Additional documentation

Development

make up
make test
make assets
make -C demo up-symfony8

Tests and coverage

Language Coverage (approx.) Command
PHP 95% make test-coverage
TypeScript Vitest (api-client, poll-controller, chart-theme) make test-ts
Python N/A β€”
make test
make test-coverage
make test-coverage-90
make test-ts
make release-check

License

MIT β€” see LICENSE.