Brick is a Haskell library for building declarative terminal user interfaces (TUIs). It targets Haskell developers seeking a structured, pure functional approach to TUI development, simplifying complex UI layouts and event handling.
How It Works
Brick employs a declarative API where the UI is described as a pure function of the application state. Event handling is managed by pattern matching on events to update this state. This approach, built on the vty
library, abstracts away low-level terminal manipulation, allowing developers to focus on UI structure and logic.
Quick Start & Requirements
cabal new-build -f demos
to build demo programs.find dist-newstyle -type f -name \*-demo
.Highlighted Details
vty
for cross-platform (Unix, Windows) compatibility.Maintenance & Community
Licensing & Compatibility
Limitations & Caveats
Performance has been deliberately deferred in favor of design exploration. Brick is experimental, and some design trade-offs may not suit all applications. Windows support is implicit via vty
and may require issue reporting for specific problems.
1 week ago
1 day