station.html: revert .service-grid to flex-column (was accidentally set
to grid auto-fill causing horizontal card layout and missing clock).
station-b.html: add missing => in cols.forEach callback that crashed
the entire script, preventing data load and canvas aurora animation.
- CPU/MEM/DISK bars replaced with 20-cell binary bars (1=filled, 0=empty)
- Service cards: latency bar removed, mini sparkline with gradient area added
- Footer ticker: all metrics as binary tape (CPU/MEM/DISK/LOAD/UP/SESSION/TIME/IP/HOST)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add /api/check?url= endpoint to server.js for server-side HTTP checks
- Gitea and Syncthing use proxy:true to route through this endpoint
- Fixes Gitea/Syncthing showing DOWN due to https→http mixed content
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Redesign with glassmorphism panels (backdrop-filter blur+saturate).
Ring charts for CPU/mem/disk with glow filter and smooth transition.
Sparkline history (20 samples) for CPU and Load Average.
Service cards now show 5-sample history dots.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
New right-column panel: each metric (CPU, memory, disk, load, uptime,
sessions, unix timestamp) shown as actual binary bits + human value +
mini bar. Rotates through rows every 4s. IP scrolls as binary ticker.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
server.js: /api/health now includes disk usage (df -B1 /) and load_avg
(os.loadavg) + cpu_count. station.html: disk bar, load average chips
with warn/crit coloring vs cpu count, alert banner highlights issues.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Real-time system monitor for Ubuntu PC HDMI display.
Polls /api/health every 30s for CPU/memory/uptime metrics,
checks all service endpoints, Aurora design with JetBrains Mono clock.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Single snapshot returns lifetime average (near 0 on idle systems).
Two samples 100ms apart gives real-time cpu usage per core, then averaged.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Force xterm-viewport/screen/canvas to transparent so container aurora shows through
- theme.background: 'transparent' (was rgba with 0 alpha — some renderers ignored it)
- Scrollbar: 5px, violet 40% opacity, thin Firefox fallback via scrollbar-color
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Header dot: grey→green(pulse) on connect, red on disconnect — replaces text badge
- /morning renamed to /todo (今日のタスク)
- Status text badge hidden (dot carries the signal now)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Web Speech API mic button (ja-JP, pulses red while listening, hidden if unsupported)
- Claude bot icon 15px → 20px, button 32px → 36px
- Aurora gradient opacity 7% → 14% (visible through transparent xterm canvas)
- Session ID moved to settings panel (hidden in chat bar)
- Removed chat input placeholder
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Claude 開始 → bot icon only (32x32, same style as settings btn)
- xterm-viewport scrollbar: 4px, translucent violet, rounded
- session badge moved from header to chat bar left edge (mobile-friendly)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Split preWarmBusy from ttsBusy so user requests are never blocked by pre-warm
- /tts endpoint waits up to 6s for pre-warm synthesis then proceeds
- Pre-warm skips articles when user is actively using TTS
- Fix text format to match Brief exactly (remove substring(60), fix source fallback)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds GET/POST/PATCH/DELETE for feed_media table, bringing git in sync
with the deployed Synology version. Safe to deploy-server.sh after this.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>