πŸš€ GitHub Showcase

Uptime-Robot-Wallboard

Last commit date badge Open issues count badge Repository size badge Latest release version badge
View on GitHub
Languages
Hack 59.0%
PHP 41.0%

πŸ“– README

UptimeRobot Wallboard

Last Commit
Issues
Repo Size
GitHub release (latest by date)

A real-time status wallboard for monitoring your UptimeRobot services. Display service health, uptime status, and alerts on a clean, customizable dashboard perfect for NOC displays, office monitors, or personal dashboards.

Status Wallboard

Note: Screenshots show demo data only. No real services or sensitive information are displayed.

✨ Key Features

  • πŸš€ Easy Setup - Built-in installer wizard for first-time configuration
  • πŸ“Š Real-time Monitoring - Automatic refresh with live status updates
  • πŸ“ˆ Response Time Graphs - Visual line graphs showing last hour's response times on each tile
  • 🎨 Dark/Light Themes - Toggle between themes with system preference support
  • πŸ” Smart Filtering - Show all monitors or only those with issues
  • 🏷️ Tag Filtering - Filter monitors by tags with colored pills and multi-select
  • ⏸️ Paused Device Control - Show/hide paused monitors with one click
  • πŸ–₯️ Fullscreen Mode - Auto-fullscreen support for kiosk displays
  • 🎯 Customizable - Add your logo and custom title
  • βš™οΈ Flexible Configuration - URL parameters and config file options
  • πŸ”„ Auto-refresh - Detects configuration changes automatically

πŸš€ Quick Start

Prerequisites

  • Web server with PHP 7.4+ (Apache or Nginx)
  • UptimeRobot account with API access
  • Basic knowledge of file permissions and web hosting

Installation

  1. Clone or download this repository to your web server:
       cd /var/www/html
       git clone https://github.com/BlindTrevor/Uptime-Robot-Wallboard.git status
       cd status
  2. Access the installer by navigating to the application in your browser. If no configuration exists, you'll be automatically redirected to installer.php.
  3. Enter your UptimeRobot API token (Get it from: UptimeRobot Settings β†’ API Settings)
  4. Configure your preferences in the installer form and click "Create Configuration"
  5. Done! The wallboard will automatically load and display your monitors

Manual Configuration (Alternative)

If you prefer manual setup:

  1. Copy the example configuration:
       cp config.env.example config.env
  2. Edit config.env and add your UptimeRobot API token:
       UPTIMEROBOT_API_TOKEN=your-api-token-here
       WALLBOARD_TITLE=My Status Dashboard
       SHOW_PROBLEMS_ONLY=false
       SHOW_PAUSED_DEVICES=false
       REFRESH_RATE=20
       THEME=dark
  3. Set secure file permissions:
       chmod 600 config.env
       chown www-data:www-data config.env
  4. Access index.php in your browser

πŸ“– Configuration Options

Edit config.env to customize your wallboard:

Option Description Default
MDINLINECODEf66e09df042a6c02b0585197917b90dbENDMDINLINECODE Your UptimeRobot API token (required) -
MDINLINECODEed954c7cdfc26f893be61144f16b27cbENDMDINLINECODE Custom title for your wallboard MDINLINECODEc7123495739c2c8f26a1412a8eca4cc7ENDMDINLINECODE
MDINLINECODE076e9f69385554a885c263c9c8ade696ENDMDINLINECODE Path to logo image or URL (empty)
MDINLINECODE351fd9e56c0d9f86dc920dc3b2ab254aENDMDINLINECODE Show only monitors with issues MDINLINECODE99b36aa15a80d4759e5f8b844d570703ENDMDINLINECODE
MDINLINECODEf227a4e52e1b4ffe821d6fe68308df5aENDMDINLINECODE Display paused monitors MDINLINECODE17b54bf9ccb5e4acfc0e6ec89c518a34ENDMDINLINECODE
MDINLINECODE1a737b4156cefdf3488c8d7302c1b714ENDMDINLINECODE Display tags on monitor cards MDINLINECODEbd8003fac83e7365743219d0f49e27a2ENDMDINLINECODE
MDINLINECODEbfb00f1e81af0a36b5c975255887ba92ENDMDINLINECODE Data refresh interval (seconds) MDINLINECODEff410607a3266140104375da441a30aaENDMDINLINECODE
MDINLINECODE82f8239f38d469b01363eeb9c401e958ENDMDINLINECODE Config file check interval (seconds) MDINLINECODE59bce13a674cb05a3ed9df0a3d9f654cENDMDINLINECODE
MDINLINECODEe03fd6f884f0ac7516e01ae9761a249aENDMDINLINECODE Response time graph cache duration (seconds, min 60) MDINLINECODE3375ef528c09cb86f2bc3645d1a166b0ENDMDINLINECODE
MDINLINECODEca51f4570fa4a22f9d3af4461780e0f4ENDMDINLINECODE Theme: MDINLINECODE6c9add6c9c054f86051b1732a028a423ENDMDINLINECODE, MDINLINECODEb8152de6dc6c83057271d3059b1745ccENDMDINLINECODE, or MDINLINECODEc0eebd9ec74dfa3d426f5c5261326018ENDMDINLINECODE MDINLINECODE28d4e3b4f4755bb303941931803cc5e9ENDMDINLINECODE
MDINLINECODEb777f26d3c3a8b858d8fdd8a2ff7865eENDMDINLINECODE Auto-enter fullscreen on load MDINLINECODEc05e9b4378624ea8cb8d8bdc1f1fda52ENDMDINLINECODE
MDINLINECODE1deccb80e4dd36d8f6cac337ffd91abdENDMDINLINECODE Allow URL parameter overrides MDINLINECODEbf27ca93fecaf236f95a173364ff3713ENDMDINLINECODE
MDINLINECODEf587701461106d57cdc866b0889fb5acENDMDINLINECODE Custom tag color configuration (JSON format) (empty)
MDINLINECODE2406bf17be4010d6c086f63e6edfc52aENDMDINLINECODE Time window (in minutes) for highlighting recent events MDINLINECODE04dd36268a84b2b82c92121e26bf6881ENDMDINLINECODE

🎯 Usage

Basic Usage

Simply open the wallboard in your browser. It will automatically:
  • Load and display all your UptimeRobot monitors
  • Refresh every 20 seconds (configurable)
  • Show status with color-coded indicators:
  • 🟒 Green = Up/Operational
  • πŸ”΄ Red = Down/Offline
  • 🟑 Yellow = Paused

URL Parameters

Override settings temporarily using URL parameters:

# Show only problems, refresh every 30 seconds
https://your-domain.com/status/?showProblemsOnly=true&refreshRate=30

# Use light theme and auto-fullscreen for kiosk
https://your-domain.com/status/?theme=light&autoFullscreen=true

# Show paused devices and hide tags
https://your-domain.com/status/?showPausedDevices=true&showTags=false

Control Buttons

  • Show Only Problems - Toggle between all monitors and problem-only view
  • Show/Hide Paused - Quickly toggle paused monitor visibility
  • Show/Hide Tags - Toggle tag visibility on monitor cards
  • Show/Hide Filter - Toggle the tag filter section visibility
  • Theme Toggle - Switch between dark and light themes
  • Fullscreen - Enter/exit fullscreen mode
  • Refresh Now - Manually trigger data refresh

Multi-Instance Support πŸ†•

The wallboard now supports running multiple independent instances (browser tabs/windows/machines) without API query duplication or shared actions:

Session Isolation

  • Unique Session ID: Each browser tab/window gets a unique session identifier displayed in the header
  • Independent State: Theme, filters, and view settings are isolated per session
  • No Cross-Session Interference: Actions in one tab don't affect others

API Request Coordination

  • Cross-Tab Communication: When multiple tabs are open, they coordinate to prevent duplicate API calls
  • Smart Refresh: Only one tab makes API requests while others benefit from the results
  • Reduced API Volume: Automatic coordination helps reduce overall API call volume

Best Practices for Multiple Displays

  1. Active Displays: Open normally - tabs will coordinate automatically
  2. Passive/View-Only Displays: Use ?norefresh=true parameter (see below)
  3. Debugging: Check the session ID in the header to distinguish instances

Disable Auto-Refresh (Passive Mode)

For displays that don't need real-time updates or to reduce API usage:

# Load data once without automatic refreshes
https://your-domain.com/status/?norefresh=true

# Combine with other parameters
https://your-domain.com/status/?norefresh=true&showProblemsOnly=true
When norefresh is enabled:
  • βœ… Initial data loads normally
  • β›” No automatic API polling
  • β›” Config change detection disabled
  • βœ… Manual "Refresh Now" button still works
Use cases:
  • Kiosk displays that don't need real-time updates
  • Secondary monitors in multi-display setups
  • Reducing API quota usage
  • Screenshots or demos with static data

πŸ”’ Security Best Practices

Store Config Outside Webroot (Recommended)

The most secure approach is to store config.env outside your web-accessible directory:

# If your webroot is /var/www/html/status
# Store config at /var/www/html/config.env (one level up)

cat > /var/www/html/config.env << 'EOF'
UPTIMEROBOT_API_TOKEN=your-token-here
# ... other settings ...
EOF

chmod 600 /var/www/html/config.env
chown www-data:www-data /var/www/html/config.env

The application automatically searches parent directories for the config file.

If Storing in Webroot

If you must store config.env in the webroot:

  1. Set restrictive permissions:
       chmod 600 config.env
  2. Verify .htaccess protection (Apache):
       curl http://your-domain.com/status/config.env
       # Should return 403 Forbidden
  3. For Nginx users, add to your server block:
       location ~ /config\.env {
           deny all;
           return 403;
       }

Security Checklist

  • βœ… config.env returns 403 when accessed via HTTP
  • βœ… File permissions set to 600 (owner read/write only)
  • βœ… config.env is in .gitignore (never commit secrets!)
  • βœ… Consider storing outside webroot for maximum security

🎨 Themes

Dark Theme (Default)

Dark Theme

Screenshot shows demo data with response time graphs visible on each monitor tile.

Light Theme

Light Theme

Screenshot shows demo data with response time graphs in light theme.

Switch themes using:
  • The theme toggle button in the UI
  • ?theme=dark, ?theme=light, or ?theme=auto URL parameter
  • THEME setting in config.env

🏷️ Tag Filtering

Filter your monitors by tags for better organization and focused monitoring. Each monitor displays its assigned tags as colored pills, making it easy to visually identify and categorize services.

Features

  • Colored Tag Pills - Each tag displays with a unique, deterministic color for easy visual identification
  • Multi-Tag Filtering - Select one or more tags to filter monitors (OR logic - shows monitors with ANY selected tag)
  • Collapsible Filter - Toggle filter visibility with "Show Filter" / "Hide Filter" button
  • Clear Filters - One-click to reset all tag selections
  • Real-time Updates - Instant filtering as you select/deselect tags

Filter Section

Tag Filter Section

Screenshot shows demo data with the tag filter section expanded, displaying all available tags with colored pills. Response time graphs are visible on each monitor tile.

Click "Show Filter" to reveal all available tags. Click any tag to filter monitors.

Filtered View

Filtered by Critical Tag

Screenshot shows demo data filtered to only display monitors tagged with "critical". The selected tag appears highlighted in the filter section, and only matching monitors are shown with their response time graphs.

When one or more tags are selected, only monitors with those tags are displayed. Selected tags appear highlighted with increased opacity and a shadow effect.

How to Use

  1. View Tags - All monitors display their tags as colored pills at the bottom of each card
  2. Show Filter - Click the "Show Filter" button in the controls to reveal the tag filter section
  3. Select Tags - Click one or more tags to filter monitors. Selected tags are highlighted
  4. Clear Filter - Click "Clear Filter" to remove all selections and show all monitors
  5. Hide Filter - Click "Hide Filter" to collapse the filter section

Benefits

  • Quick Organization - Instantly filter to Production, Staging, API, Database, or any custom tags
  • Multi-Environment - Separate views for different environments or regions
  • Team Workflows - Filter by team ownership, criticality, or service type
  • Visual Clarity - Color-coded tags make it easy to scan and identify services at a glance

Custom Tag Colors

You can customize tag colors using the TAG_COLORS configuration option in config.env. This accepts a JSON object with two optional configurations:

1. Define acceptable color palette:

TAG_COLORS={"acceptable":["#FF0000","#00FF00","blue","orange"]}

2. Map specific tags to specific colors:

TAG_COLORS={"tags":{"production":"red","staging":"yellow","development":"#3ad29f"}}

3. Combine both approaches:

TAG_COLORS={"acceptable":["#FF0000","#00FF00","blue"],"tags":{"critical":"red","warning":"yellow","info":"#abf7b1"}}

Supported color formats include:


  • Hex codes: #FF0000, #abf7b1

  • CSS color names: red, blue, orange, green

  • RGB/HSL formats: rgb(255,0,0), hsl(120,100%,50%)


If not specified, colors are automatically generated from tag names using a deterministic algorithm for consistent coloring across page reloads.

πŸ“ˆ Response Time Graphs

Each monitor tile that provides response time data displays a small green line graph in the bottom-right corner, showing the monitor's response times over the last hour.

Features

  • Automatic Display - Graphs automatically appear for monitors that support response time tracking
  • Last Hour Data - Shows response time trends over the past 60 minutes
  • Theme-Aware - Graph colors adapt to your selected theme (dark/light)
  • Hover Details - Hover over a graph to see min/max/avg response times
  • Smart Caching - Response time data is cached for 5 minutes (configurable) to reduce API calls
  • Rate Limit Friendly - Requests are queued with delays to avoid overwhelming the API

Configuration

Control the cache duration in config.env:

# Cache response time data for 5 minutes (300 seconds)
RESPONSE_TIME_CACHE_DURATION=300

# Or customize to your needs:
# RESPONSE_TIME_CACHE_DURATION=60    # 1 minute (minimum)
# RESPONSE_TIME_CACHE_DURATION=600   # 10 minutes
# RESPONSE_TIME_CACHE_DURATION=1800  # 30 minutes

Note: The minimum cache duration is 60 seconds (1 minute). Longer cache durations reduce API calls and help stay within rate limits, but graphs will update less frequently.

How It Works

  1. When the wallboard loads, it queries the UptimeRobot API for each monitor's response time statistics
  2. The data is cached locally for the configured duration (default: 5 minutes)
  3. Small line graphs are rendered using HTML5 canvas on each monitor tile
  4. Graphs automatically update when the cache expires

πŸ“œ Event History & Recent Event Highlighting

The wallboard includes an event history viewer that tracks all monitor status changes and system events. Recent events are automatically highlighted to improve visibility of recent activity.

Features

  • Event Tracking - Automatically logs all monitor state changes (up, down, paused) and system events
  • Event Types - Track different event categories:
  • Up - Monitor status changes to operational/up
  • Down - Monitor status changes to down/offline
  • Paused - Monitor paused status events
  • Error - System errors and transient issues
  • Actions - User and page-initiated events (page refresh, button toggles, page load, etc.)
  • Recent Event Highlighting - Events within the configured time window are displayed with a prominent color and visual effects
  • Configurable Time Window - Customize how long events are considered "recent" (default: 1 hour)
  • Event Sidebar - View comprehensive event history with pagination
  • Event Filtering - Filter events by type using interactive filter pills
  • Circular Logging - Optionally limit event history to a maximum number of events

Recent Event Highlighting

Events that occurred within the configured time window are automatically highlighted with:
  • Distinctive gradient background
  • Prominent border color
  • Subtle glow effect
  • Enhanced hover state
This makes it easy to spot recent activity at a glance, especially useful for:
  • Identifying ongoing issues
  • Tracking recent deployments or changes
  • Monitoring system stability over recent hours

Configuration

Control the recent event time window in config.env:

# Highlight events from the last 60 minutes (default)
RECENT_EVENT_WINDOW_MINUTES=60

# Or customize to your needs:
# RECENT_EVENT_WINDOW_MINUTES=30   # 30 minutes
# RECENT_EVENT_WINDOW_MINUTES=120  # 2 hours
# RECENT_EVENT_WINDOW_MINUTES=1440 # 24 hours

If not configured, the default is 60 minutes (1 hour) to maintain backwards compatibility.

How to Use

  1. Click the Events button in the controls to open the event history sidebar
  2. Recent events (within your configured time window) will appear with prominent highlighting
  3. Older events appear with standard styling
  4. Use the event type filter pills to show/hide specific event categories (Down, Up, Paused, Error, Actions)
  5. Use pagination controls to browse through historical events

πŸ–₯️ Kiosk Mode

Perfect for dedicated monitoring displays:

  1. Set up auto-fullscreen:
       # In config.env
       AUTO_FULLSCREEN=true
  2. Or use URL parameter:
       https://your-domain.com/status/?autoFullscreen=true&showProblemsOnly=true
  3. Combine with browser kiosk mode for an immersive experience

πŸ”§ Troubleshooting

No data showing

  • Check browser console for errors (F12)
  • Verify API token is correct in config.env
  • Ensure uptimerobot_status.php is accessible
  • Check uptime_errors.log for PHP errors

Configuration not loading

  • Verify config.env file exists and has correct permissions
  • Check file format: KEY=value (no spaces around =)
  • Ensure web server can read the file (chmod 600 and correct ownership)

403 Forbidden errors

  • For .env files: This is expected and correct (security protection)
  • For PHP files: Check Apache/Nginx configuration allows PHP execution
  • Verify .htaccess is not blocking legitimate requests

Installer redirects immediately

  • Config file already exists - use the main application
  • To reconfigure, delete or rename existing config.env

πŸ“š Advanced Features

Paused Device Control

Control visibility of paused monitors:


  • Default: Paused monitors are hidden

  • Show Paused: Display paused monitors with warning indicators

  • Toggle Button: Quick show/hide via UI button

  • URL Override: ?showPausedDevices=true or false


When shown, paused monitors:

  • Display "PAUSED" status with ⏸️ icon

  • Use warning (yellow/orange) color

  • Are counted separately in the header

  • Don't trigger the red "issues" background


Paused Monitors View

Screenshot shows demo data with a paused monitor (Example Staging Server) displayed with warning colors and "PAUSED" status. Response time graphs are visible on all monitor tiles, including the paused one.

Query String Parameters

All configuration options can be overridden via URL (when ALLOW_QUERY_OVERRIDE=true):

?showProblemsOnly=true          # Show only problematic monitors
?showPausedDevices=true         # Show/hide paused monitors
?showTags=false                 # Show/hide tags on monitor cards
?refreshRate=30                 # Set refresh interval (seconds)
?theme=light                    # Set theme (dark/light/auto)
?autoFullscreen=true            # Auto-enter fullscreen
?configCheckRate=10             # Config check interval
?norefresh=true                 # Disable automatic refresh (accepts 'true' or '1')

Disable Automatic Refresh

Note: For multi-instance scenarios and best practices, see the Multi-Instance Support section above.

Use the ?norefresh=true parameter to disable all automatic API refreshes. See the Usage section for detailed information and use cases.

Auto-Refresh on Config Changes

The wallboard automatically detects changes to config.env and refreshes the display within 5 seconds. No manual reload needed when updating:
  • Title or logo
  • Theme settings
  • Display filters
  • Refresh rates

Logo Display

Add your company logo to the wallboard:

  1. Upload your logo file to the application directory
  2. Edit config.env:
       WALLBOARD_LOGO=logo.png
       # Or use a URL:
       # WALLBOARD_LOGO=https://example.com/logo.png
  3. Recommended size: 200x50 pixels or similar aspect ratio
  4. Supported formats: PNG, SVG, JPG, GIF

🀝 Contributing

Contributions are welcome! Please feel free to:
  • Report bugs or issues
  • Suggest new features
  • Submit pull requests
  • Improve documentation

πŸ“„ License

This project is open source and available for use and modification.

πŸ™ Acknowledgments

  • Built for UptimeRobot API v3
  • Font Awesome for icons
  • Community contributions and feedback

πŸ“ž Support

For issues, questions, or feature requests, please use the GitHub Issues page.


Made with ❀️ for monitoring enthusiasts

πŸš€ Releases

v1.6.2

v1.6.2 Released on February 17, 2026
## What's Changed
* Update README screenshots with dummy data and response graphs by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/101


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.6.1...v1.6.2
View release details β†’

v1.6.1

v1.6.1 Released on February 17, 2026
## What's Changed
* Update README screenshots with dummy data by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/97
* Decouple response graph refresh from main wallboard refresh cycle by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/99


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.6.0...v1.6.1
View release details β†’

v1.6.0

v1.6.0 Released on February 17, 2026
## What's Changed
* Add themed scrollbar styling with proper event sidebar positioning by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/85
* Make spike detection selective for ping/broadband variation by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/87
* Fix tag pills CSS positioning conflict by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/89
* Increase tag pill transparency by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/91
* Implement per-session state isolation and cross-tab API coordination by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/94
* Fix footer branding disappearing on refresh by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/95


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.5.0...v1.6.0
View release details β†’

v1.5.0

v1.5.0 Released on February 12, 2026
## What's Changed
* Suppress HTTP 429 error display while preserving logging by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/72
* Fix event viewer pagination to apply after filtering by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/73
* Add visual status indicator for auto-refresh state by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/71
* Add countdown timer to autorefresh pill by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/79
* Add EVENT_TYPE_FILTER_DEFAULT_ACTIONS configuration option by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/75
* Add client-side interval for real-time time display updates by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/80
* Reduce tooltip delay from 500ms to 200ms for event filter pills by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/81
* Add per-tile response time graphs with configurable caching by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/83


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.4.1...v1.5.0
View release details β†’

v1.4.1

v1.4.1 Released on February 11, 2026
## What's Changed
* Added event viewer filter

**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.4.0...v1.4.1
View release details β†’

v1.4.0

v1.4.0 Released on February 10, 2026
## What's Changed
* Add event viewer sidebar with NDJSON persistence and configurable retention by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/61
* Log API errors to event viewer by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/63
* Hide event sidebar scrollbar while preserving scroll functionality by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/65


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.3.2...v1.4.0
View release details β†’

v1.3.2

v1.3.2 Released on February 9, 2026
## What's Changed
* Fix 429 errors by implementing debouncing and request coalescing for API calls by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/59


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.3.1...v1.3.2
View release details β†’

v1.3.1

v1.3.1 Released on February 9, 2026
## What's Changed
* Add API rate limit monitoring and discrete quota display by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/57


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.3.0...v1.3.1
View release details β†’

v1.3.0

v1.3.0 Released on February 9, 2026
## What's Changed
* Document TAG_COLORS configuration and fix file reference by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/53
* Add fixed red alert bar for offline services by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/55


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.2.0...v1.3.0
View release details β†’

v1.2.0

v1.2.0 Released on February 6, 2026
## What's Changed
* Display tags for down monitors next to alerts count by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/49
* Fix installer redirect to index.php by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/50
* Fix tagColors not applied from server config by @Copilot in https://github.com/BlindTrevor/Uptime-Robot-Wallboard/pull/51


**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.1.0...v1.2.0
View release details β†’

v1.1.0

v1.1.0 Released on February 6, 2026
## What's Changed
* Tag filtering feature added

**Full Changelog**: https://github.com/BlindTrevor/Uptime-Robot-Wallboard/compare/v1.0.0...v1.1.0
View release details β†’

Release v1.0.0 - UptimeRobot Wallboard

v1.0.0 Released on February 5, 2026
# Release v1.0.0 - UptimeRobot Wallboard
**Release Date:** February 5, 2026
This is the first official release of **UptimeRobot Wallboard** - A real-time status wallboard for monitoring your UptimeRobot services.
## πŸŽ‰ What's New
UptimeRobot Wallboard provides a clean, customizable dashboard perfect for NOC displays, office monitors, or personal dashboards. Display service health, uptime status, and alerts in real-time.
### ✨ Key Features
- πŸš€ **Easy Setup** - Built-in installer wizard for first-time configuration
- πŸ“Š **Real-time Monitoring** - Automatic refresh with live status updates
- 🎨 **Dark/Light Themes** - Toggle between themes with system preference support
- πŸ” **Smart Filtering** - Show all monitors or only those with issues
- ⏸️ **Paused Device Control** - Show/hide paused monitors with one click
- πŸ–₯️ **Fullscreen Mode** - Auto-fullscreen support for kiosk displays
- 🎯 **Customizable** - Add your logo and custom title
- βš™οΈ **Flexible Configuration** - URL parameters and config file options
- πŸ”„ **Auto-refresh** - Detects configuration changes automatically
## πŸš€ Quick Start
### Installation
1. Clone or download this repository to your web server:
- Copy all files to a web host directory and browse to that directory.
- Alternativly:
```bash
cd /var/www/html
git clone https://github.com/BlindTrevor/Uptime-Robot-Wallboard.git status
cd status
```
2. Access the installer by navigating to the application in your browser. If no configuration exists, you'll be automatically redirected to `installer.php`.
3. Enter your UptimeRobot API token (Get it from: [UptimeRobot Settings β†’ API Settings](https://uptimerobot.com/dashboard#mySettings))
4. Configure your preferences and click "Create Configuration"
5. Done! The wallboard will automatically load and display your monitors
### Manual Configuration (Alternative)
```bash
cp config.env.example config.env
# Edit config.env and add your UptimeRobot API token
chmod 600 config.env
chown www-data:www-data config.env
```
## πŸ“‹ Requirements
- Web server with PHP 7.4+
- Apache or Nginx
- UptimeRobot account with API access
## 🎨 Themes
Choose from:
- **Dark Theme** (default) - Perfect for dark environments
- **Light Theme** - Clean and bright
- **Auto Theme** - Follows system preferences
## πŸ”’ Security Features
- Config file protection via `.htaccess` (Apache) and example Nginx config
- Recommended file permissions (600) for sensitive files
- Option to store config outside webroot
- Comprehensive security best practices documentation
## πŸ“š Documentation
- Full installation guide in README.md
- Configuration options reference
- Troubleshooting section
- Security best practices
- Kiosk mode setup guide
## πŸ”§ Technical Details
- PHP 7.4+ compatible
- Works with Apache (`.htaccess` included) and Nginx (example config provided)
- UptimeRobot API v3 integration
- Font Awesome 6.5.1 for icons
- No external dependencies beyond PHP and web server
## πŸ“ Files Included
- `index.php` - Main wallboard interface
- `installer.php` - Setup wizard
- `uptimerobot_status.php` - API backend
- `config-utils.php` - Configuration utilities
- `config_version.php` - Config change detection
- `config.env.example` - Example configuration
- `.htaccess` - Apache security config
- `nginx.conf.example` - Nginx configuration example
- `README.md` - Comprehensive documentation
## πŸ’‘ Usage Examples
### Basic Usage
Simply open the wallboard in your browser - it will automatically load and display all your UptimeRobot monitors.
### Kiosk Mode
```
https://your-domain.com/status/?autoFullscreen=true&showProblemsOnly=true
```
### Custom Configuration
```
https://your-domain.com/status/?theme=light&refreshRate=30
```
## πŸ› Known Issues
None at this time.
## 🀝 Contributing
Contributions are welcome! Please feel free to:
- Report bugs or issues
- Suggest new features
- Submit pull requests
- Improve documentation
## πŸ“ž Support
For issues, questions, or feature requests, please use the [GitHub Issues](https://github.com/BlindTrevor/Uptime-Robot-Wallboard/issues) page.
## πŸ“„ License
This project is open source and available for use and modification.
View release details β†’