feat(hh): ratatui TUI client — chat, live roster, themes
- Connect subcommand: SRP auth then a ratatui UI over tokio + crossterm. - Async ws (tokio-tungstenite); reader task decrypts/parses frames into events. - Panes: top bar (e2e + house N/cap), chat scrollback, roster (self marked ⛧), input box. Undecryptable frames surface as a system line, not a silent drop. - Themes (vestments) via TOML --theme; default occult-monochrome + neon. - Verified live in tmux: render, chat round-trip, roster, join/leave. - Adds fernet python->rust interop regression test. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
# crypt — churchofmalware occult monochrome (default)
|
||||
name = "crypt"
|
||||
border = "darkgray"
|
||||
title = "white"
|
||||
accent = "white"
|
||||
dim = "darkgray"
|
||||
me = "white"
|
||||
other = "gray"
|
||||
system = "darkgray"
|
||||
input = "white"
|
||||
roster_me = "white"
|
||||
roster_width = 22
|
||||
@@ -0,0 +1,12 @@
|
||||
# neon — cyberpunk accents on black
|
||||
name = "neon"
|
||||
border = "#3a3a5a"
|
||||
title = "#e0e0ff"
|
||||
accent = "#ff2fd0"
|
||||
dim = "#5a5a7a"
|
||||
me = "#39ff14"
|
||||
other = "#00e5ff"
|
||||
system = "#7a5cff"
|
||||
input = "#39ff14"
|
||||
roster_me = "#ff2fd0"
|
||||
roster_width = 24
|
||||
Reference in New Issue
Block a user