DEV Community

Cover image for Why We Built a Lightweight Uptime Monitor for Shared Hosting
WebOrbiton
WebOrbiton

Posted on

Why We Built a Lightweight Uptime Monitor for Shared Hosting

Today, there are many tools available for monitoring website and service uptime. However, most of them fall into one of two categories, SaaS platforms or systems that require a dedicated VPS along with complex setup and ongoing maintenance. We wanted to take a different approach.

Our goal was to build an ultra-lightweight and modern monitoring system that:

  • works even on shared hosting,
  • requires no heavy libraries or dependencies,
  • gives users full control over their data.

This is how WebOrbiton was created.


Monitoring That’s Too Heavy

WebOrbiton Files
There are countless small projects run by solo developers or small companies. Many of them are personal websites, side projects, or early-stage products that do not generate enough revenue to justify paying for a VPS or maintaining a recurring SaaS subscription just for uptime monitoring.

At the same time very few monitoring tools work reliably on standard shared hosting and those that do are often outdated or no longer maintained.


How WebOrbiton Works

Example Config
WebOrbiton is built on PHP and Cron Jobs, which makes it database-free, free from background daemons or workers and compatible with virtually any hosting environment that supports PHP 7.4+.

You don't need to be a senior developer to launch your own monitoring panel. All key settings are managed in a single, intuitive configuration file. Here is how to tailor it to your needs:

Basic Identity

Define your project’s name and the visual identity your users will see:

$siteName     = "ExampleCorp";      // Your project/company name
$siteStatus   = "Status Monitor";   // The title shown on the main page
$siteLogoText = "EC";               // Short logo/initials for the header
Enter fullscreen mode Exit fullscreen mode

Intelligent SEO

WebOrbiton automatically generates metadata for search engines and social media using dynamic placeholders:

// %s is replaced by the current overall status (e.g., Operational, Outage)
$seoTitleTemplate = "{$siteName} Status Monitor - %s";

// The description uses: %s (status), %d (service count), %.1f (uptime %)
$seoDescriptionTemplate = "{$siteName} real-time status: current status is %s. 
We monitor %d services. Average uptime is %.1f%%.";
Enter fullscreen mode Exit fullscreen mode

Monitoring Intervals & Retention

Control the granularity of your data and how far back your charts go:

  • $monitoringPeriod: Defines the history visible on the live charts (e.g., "3 hours" or "24 hours").
  • $checkRate: How often services are pinged. Set this to match your Cron Job frequency (e.g., "2 minutes").

Modular Features

WebOrbiton is modular. You can toggle advanced features by setting them to true in the $modules array:

  • ssl-monitor.php: Tracks your SSL certificates and warns you before they expire.
  • long-history.php: Enables long-term data storage (e.g., 30 days) to show monthly reliability.
  • zx-updater.php: Recommended. Keeps your system up to date with the latest security patches and features automatically.

You are free to use WebOrbiton at no cost in both non-commercial and commercial projects, modify the code to suit your needs, use it as a status page for company websites, applications and APIs, online stores and revenue-generating services (ads, subscriptions, services, etc.). Attribution is not required, but always appreciated.


Built With Passion in Poland

Website

WebOrbiton is proudly built and actively developed in Poland by the WebOrbiton Team. Our mission is to deliver reliable, real-time status monitoring while staying lightweight, transparent, and easy to deploy.

Top comments (0)