truenas-burnin/app/templates
Brandon Walter 5a802bff2e feat: live SSH terminal in drawer (xterm.js + asyncssh WebSocket)
Adds a Terminal tab to the log drawer with a full PTY session bridged
over WebSocket to the TrueNAS SSH host. xterm.js loaded lazily on
first tab open. Supports resize, paste, full color, and reconnect.

- app/terminal.py: asyncssh PTY ↔ WebSocket bridge
- routes.py: @router.websocket("/ws/terminal")
- dashboard.html: Terminal tab + drawer panel
- app.js: xterm.js lazy load, init, onData, resize observer, reconnect
- app.css: terminal panel styles (no padding, overflow hidden)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-24 09:30:56 -05:00
..
components Stage 7: SSH architecture, SMART attribute monitoring, drive reset, and polish 2026-02-24 08:09:30 -05:00
audit.html Initial commit — TrueNAS Burn-In Dashboard v0.5.0 2026-02-24 00:08:29 -05:00
dashboard.html feat: live SSH terminal in drawer (xterm.js + asyncssh WebSocket) 2026-02-24 09:30:56 -05:00
history.html Add temp thresholds, bad block threshold, editable system settings, check for updates, history completed time 2026-02-24 07:43:23 -05:00
job_detail.html Initial commit — TrueNAS Burn-In Dashboard v0.5.0 2026-02-24 00:08:29 -05:00
job_print.html Initial commit — TrueNAS Burn-In Dashboard v0.5.0 2026-02-24 00:08:29 -05:00
layout.html ui: move version badge next to title in header left side 2026-02-24 09:23:10 -05:00
settings.html fix: JS syntax error breaking all buttons; add settings restart banner 2026-02-24 08:57:57 -05:00
stats.html Stage 7: SSH architecture, SMART attribute monitoring, drive reset, and polish 2026-02-24 08:09:30 -05:00