πŸš€ 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
MDINLINECODEf06cc80f8b06b6fd9c505a7bcff06cf1ENDMDINLINECODE Your UptimeRobot API token (required) -
MDINLINECODE2e742589e9da4548cd06c23f3d684f44ENDMDINLINECODE Custom title for your wallboard MDINLINECODEaf7afef142c669283eb3287fb3d59b78ENDMDINLINECODE
MDINLINECODEb9483dfa025f3f104616353cd84e6c85ENDMDINLINECODE Path to logo image or URL (empty)
MDINLINECODEc89e6c5d6870e8b17423d92324cbce1eENDMDINLINECODE Show only monitors with issues MDINLINECODEbcadfe350d9df4f8b195310c9f53fd02ENDMDINLINECODE
MDINLINECODE6b46e025e78a4446ceb3bb4b63e88420ENDMDINLINECODE Display paused monitors MDINLINECODEc8804fa701d710291e650a8704da1d1dENDMDINLINECODE
MDINLINECODEf5647ed90b2ef9fbf2465ff614cd5ccaENDMDINLINECODE Display tags on monitor cards MDINLINECODE75a3fbf6db5186e72390459aac8c5f9fENDMDINLINECODE
MDINLINECODE81c8822b3ca465d81e17ab523bed55b9ENDMDINLINECODE Data refresh interval (seconds) MDINLINECODE15222db741b0ff7f0c8ef277156ecde0ENDMDINLINECODE
MDINLINECODE6174da1d0c54b17edbd7588140c8d158ENDMDINLINECODE Config file check interval (seconds) MDINLINECODE2207f7cb5bf963efa8330929d386e2b7ENDMDINLINECODE
MDINLINECODE1890d3a0f39bb9b40242dcdb738c5f83ENDMDINLINECODE Response time graph cache duration (seconds, min 60) MDINLINECODE826293fea4f660aa1983ed11b517d90cENDMDINLINECODE
MDINLINECODE8e481e855f987085e4c3c069b484282bENDMDINLINECODE Theme: MDINLINECODEcaa24855b2a485ffacf5f7e9500e8931ENDMDINLINECODE, MDINLINECODE76ef90d0ce9223b56e6aa72f7d0c8b4dENDMDINLINECODE, or MDINLINECODE81a54ce4398492e34769048e1ed67ce6ENDMDINLINECODE MDINLINECODE8c450d97db2d568b8f671d0d5790d8d5ENDMDINLINECODE
MDINLINECODEc3bcaec848f3821f662a890a51d55663ENDMDINLINECODE Auto-enter fullscreen on load MDINLINECODE6a2a63be2365453b13dbecfac67364aeENDMDINLINECODE
MDINLINECODE6b037c002da86450f2c21c5babea69c9ENDMDINLINECODE Allow URL parameter overrides MDINLINECODE6837a46bf3367a059bd716cafea58d5fENDMDINLINECODE
MDINLINECODE5ef63e4f99c5a49d54009489e76f9f61ENDMDINLINECODE Custom tag color configuration (JSON format) (empty)
MDINLINECODE6077c940e98129cc23d4c64ec3d08c18ENDMDINLINECODE Time window (in minutes) for highlighting recent events MDINLINECODE6f8d255255d8fd2b99e7eee8a882bc0eENDMDINLINECODE

🎯 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 β†’