aboutsummaryrefslogtreecommitdiff
path: root/internal/server/templates
Commit message (Collapse)AuthorAgeFilesLines
* feat: Add SSE streaming for instant page load and real-time updatesFuwn2026-01-281-0/+556
| | | | | | | | | | | New refresh_mode 'stream' eliminates blocking database queries from initial page load. Page renders instantly with skeleton UI, then hydrates via SSE. - Add SSE hub for managing client connections and broadcasting - Add /api/stream endpoint with init and update events - Add stream.html skeleton template with loading animations - Wire scheduler to broadcast on check completion - Backwards compatible: page/api modes unchanged
* fix: Respect display.timezone for version tooltip build dateFuwn2026-01-201-0/+13
| | | | | | | - Include raw timestamp in tooltip data for browser timezone conversion - Add timestampLabel field to identify which row contains the date - JavaScript converts build date to browser timezone when timezone: Browser - Falls back to configured timezone for server-side rendering
* feat: Add version tooltip to 'Powered by Kaze' footerFuwn2026-01-201-1/+1
| | | | | | | - Add VersionInfo struct to server - Add SetVersion() method called from main.go - Display version, commit, and build date in hoverable tooltip - Tooltip uses same style as other tooltips in the UI
* perf: Optimize API refresh to single /api/page requestFuwn2026-01-201-69/+24
| | | | | | | | | | Replace N+1 API calls (1 status + N history) with a single /api/page endpoint that returns all monitor data including history ticks. For 20 monitors: 21 requests -> 1 request per refresh interval. The /api/page endpoint is automatically public when refresh_mode=api, regardless of api.access setting, to ensure the page can always refresh.
* fix: Update history bars (ping ticks) in API refresh modeFuwn2026-01-201-23/+144
| | | | | | Fetch /api/history/{name} for each monitor in parallel and rebuild tick elements with proper colors and tooltips. Also add data attributes to monitor elements for hide_ping and disable_tooltips settings.
* feat: Add API-based refresh mode for smoother updatesFuwn2026-01-201-2/+171
| | | | | | | | | | | | Add display.refresh_mode option: - 'page' (default): Full page refresh via meta refresh - 'api': Fetch /api/status and update DOM without reload Also add display.refresh_interval (default: 30s, min: 5s) API mode updates: status indicators, response times, uptimes, errors, overall status banner, and page title counts. History bars remain static until full page refresh.
* feat: Add disable_uptime_tooltip optionFuwn2026-01-201-1/+1
|
* feat: Add uptime tooltip showing last failure time and reasonFuwn2026-01-201-1/+1
|
* feat: Add custom_head option for injecting HTML into headFuwn2026-01-201-0/+1
|
* fix: Remove detailed error from tooltip to prevent URL leakageFuwn2026-01-201-1/+1
|
* fix: Simplify error messages in monitor displayFuwn2026-01-201-3/+1
|
* style: Update tab title format to show up/down countsFuwn2026-01-201-1/+1
|
* style: Use arrow icons for tab title statusFuwn2026-01-201-1/+1
|
* feat: Add status indicator to browser tab titleFuwn2026-01-201-1/+1
|
* fix: Auto-select first item in command paletteFuwn2026-01-201-4/+3
|
* fix: Scroll selected item into view in command paletteFuwn2026-01-201-0/+8
|
* feat: Add command palette for quick navigationFuwn2026-01-201-1/+195
|
* fix: Hide ping in tooltips when hide_ping is enabledFuwn2026-01-201-1/+1
|
* feat: Add hide_ping option to hide response timeFuwn2026-01-201-1/+1
|
* feat: Add configurable UI scale optionFuwn2026-01-201-0/+3
|
* style: Remove default link underline stylingFuwn2026-01-201-2/+2
|
* feat: Add clickable link option for monitor namesFuwn2026-01-201-1/+1
|
* refactor: Use CSS prefers-color-scheme instead of JS-based theme toggleFuwn2026-01-201-28/+2
|
* fix: Prevent flash of light mode on page loadFuwn2026-01-201-9/+10
| | | | | | | - Default to dark mode by setting class="dark" on html element - Move theme CSS before external stylesheet to prevent flash - Only remove dark class if light mode is explicitly preferred - Add !important to theme variable overrides for precedence
* fix: Prevent flash of light mode on page loadFuwn2026-01-201-6/+6
| | | | | | | Move theme detection script to the very top of <head>, before any stylesheets load. This ensures the 'dark' class is added to <html> before the browser starts rendering with CSS, eliminating the flash of unstyled/wrong-theme content.
* feat: Add OpenCode-compatible theme loaderFuwn2026-01-191-0/+6
| | | | | | | | | | | | | | | | | | | | Add support for loading and applying OpenCode-compatible themes via URL. Fetches theme JSON, resolves color references, generates CSS variables and Tailwind class overrides to apply the theme seamlessly. Features: - Add theme_url config field under site section - Fetch and parse OpenCode theme.json format - Generate CSS custom properties (--theme-*) for all theme colors - Generate Tailwind class overrides to apply theme colors - Support both light and dark modes - Template.CSS type for safe CSS injection Example usage: site: theme_url: "https://raw.githubusercontent.com/anomalyco/opencode/.../opencode.json" Theme schema: https://opencode.ai/theme.json
* feat: Add ICMP, DNS, and GraphQL monitor typesFuwn2026-01-191-3/+4
| | | | | | | | | | | | | | | | | | Add three new monitor types with full support: - ICMP: Ping monitoring with configurable packet count, tracks packet loss and average RTT. Marks degraded on partial packet loss. - DNS: DNS resolution monitoring supporting A, AAAA, CNAME, MX, and TXT records. Optional custom DNS server and validation of expected IPs/CNAME. - GraphQL: GraphQL endpoint monitoring with query execution, variable support, error detection, and content validation. All new monitors include retry support, response time tracking, and integrate with existing display options (round_response_time, etc). GraphQL monitors also support SSL certificate tracking.
* feat: Add disable_ping_tooltips option to hide ping hover detailsFuwn2026-01-191-2/+2
| | | | | | Add monitor-level option to disable hover tooltips on individual ping bars. Can be set at group defaults or per-monitor. When enabled, visual appearance remains unchanged but tooltips no longer appear on hover.
* feat: Change default favicon to wind chime emoji (🎐)Fuwn2026-01-191-1/+1
|
* feat: Add wind emoji (💨) as default faviconFuwn2026-01-191-1/+5
|
* feat: Add browser timezone option for client-side time displayFuwn2026-01-191-14/+159
|
* feat: Initial commitFuwn2026-01-171-0/+357