Terminal backend for Presentar UI framework.
This crate bridges presentar_core abstractions (Canvas, Widget, Brick) to
the terminal using crossterm directly.
Architecture (PROBAR-SPEC-009)
The crate follows the Brick Architecture from PROBAR-SPEC-009:
- All widgets implement
Bricktrait (tests define interface) - Jidoka gate prevents rendering if assertions fail
- Performance budgets are enforced
- Zero-allocation steady-state rendering via direct crossterm backend
Example
use presentar_terminal::{TuiApp, TuiConfig};
use presentar_core::{Brick, Widget};
// Create your root widget (must implement Widget + Brick)
let root = MyRootWidget::new();
// Run the application
TuiApp::new(root)?.run()?;
Design Principles Enforcement
This library enforces strict adherence to design principles (Tufte, Popper, Nielsen).
The following include_str! ensures that the design principles test suite exists at compile time.