Files
tai/research/tui-framework-design/telecli-tui-chat-layout.md
T
2026-10-12 00:53:52 +02:00

2.4 KiB

telecli src/tui.rs — chat layout and modal keys

Metadata

Field Value
Institute Molodetz Institute — Research & Retrieval Division
Subject tui-framework-design
Document type Source Dossier
Tier 1
Source title telecli src/tui.rs — ratatui/crossterm Telegram client TUI
Source URL https://raw.githubusercontent.com/s3r1msultan/telecli/main/src/tui.rs
Source publisher / author s3r1msultan (telecli project)
Source type repository
Source date (published) Unknown — not stated
Date researched 2026-10-11
Researched by tai (agent), model: Muse Spark, on behalf of retoor
Research method direct page fetch
Confidence Medium
Status Active

Summary

A single-file ratatui Telegram client UI: a fixed 30/70 horizontal split with a chat list plus 3-row help bar on the left and messages plus a 3-row input on the right, a 1-line status overlay at the bottom, and modal Normal/Input key handling. There is no resize handling.

Key findings

  • Layout is a fixed horizontal Percentage(30) / Percentage(70) split; left pane holds a chat List plus a 3-row help bar, right pane holds messages (Min(0)) plus a Length(3) input.
  • Status is drawn as a 1-line bottom overlay rect showing status | Mode.
  • Modal keys: j/k/Up/Down navigate chats, i/Enter enters input mode, Esc cancels, Enter sends, s/w or PgUp/PgDn scroll by 10 lines, r refreshes, ? shows hints, q then y/n quits.
  • Messages render as rows of the form -> text [HH:MM]; outgoing messages are green.

Pros / strengths

  • Minimal complete precedent for a Telegram-like layout in a single file: split ratios, pane contents, and status overlay are all directly copyable numbers.
  • Modal Normal/Input separation keeps chat navigation keys from colliding with typing.

Cons / limitations / caveats

  • No resize or narrow-terminal handling at all; the 30/70 split is unconditional.
  • Single-file scope means no theming, no focus-cycle across panes, no streaming or markdown handling to learn from.

Relevance to tai

  • Supplies the base layout numbers for tai's chat scene (30/70 split, 3-row input, 1-line status overlay) and the modal Normal/Input key pattern adopted in the messaging-layout conclusion.

Changelog

Date Change
2026-10-11 Initial dossier created from 2026-10-11 research-pass evidence (body opened via web_fetch by researching agent).