zc2 0.0.27

P2P compute broker with credit-based billing, WAL, and broker mesh support
//! Interactive terminal for `zc`.
//!
//! This module is being grown incrementally per `docs/TERMINAL_REFACTOR.md` to
//! bring the terminal up to a Claude Code–style interface (rich REPL UX, slash
//! commands & modes, theming & rendering).
//!
//! Phase 0 (current) lands the [`theme`] abstraction only — a no-behavior-change
//! foundation. Later phases add the modules sketched below:
//!
//! ```text
//! tui/
//!   app.rs         # App state machine: Mode enum, event loop, key routing
//!   event.rs       # input -> Action mapping; keymap table
//!   input.rs       # editable prompt, history, multiline
//!   palette.rs     # slash command palette: fuzzy match, completion, hints
//!   scrollback.rs  # output buffer: rendered blocks, wrapping, scroll
//!   statusline.rs  # mode + context bar
//!   theme.rs       # Theme struct, named palettes, load/save TOML   <-- Phase 0
//!   render/        # markdown, syntax highlight, panels, spinners
//!   views/         # monitor (today's dashboard), snapshot model
//!   data/          # DataSource trait: local + remote sources
//! ```
//!
//! The existing dashboard in [`crate::broker::tui`] is unchanged for now; Phase 1
//! unifies its local/remote implementations behind a `DataSource` and moves the
//! rendering here as `tui::views::monitor`.

#![allow(dead_code)]

pub mod app;
pub mod data;
pub mod input;
pub mod onboard;
pub mod palette;
pub mod render;
pub mod scrollback;
pub mod statusline;
pub mod theme;
pub mod views;

pub use app::run_shell;