|
2 | 2 |
|
3 | 3 | > **Status: pre-alpha.** Rezi is under active development. Public APIs, native ABI details, and behavior may change between releases. It is not yet recommended for production workloads. |
4 | 4 |
|
5 | | -Rezi is a TypeScript framework for building terminal user interfaces on Node.js and Bun. It provides a declarative widget API, deterministic input and rendering behavior, and a native-backed rendering pipeline through the [Zireael engine](https://github.com/RtlZeroMemory/Zireael) written in C. |
| 5 | +Rezi is a TypeScript framework for deterministic, native-backed terminal applications on Node.js and Bun. It provides a declarative widget API, predictable input and rendering behavior, and a rendering pipeline powered by the [Zireael engine](https://github.com/RtlZeroMemory/Zireael) written in C. |
6 | 6 |
|
7 | 7 | **Links:** [Website](https://rezitui.dev/) · [Docs](https://rezitui.dev/) · [Quickstart](https://rezitui.dev/getting-started/quickstart/) · [Widgets](https://rezitui.dev/widgets/) · [Benchmarks](https://rezitui.dev/benchmarks/) |
8 | 8 |
|
| 9 | + |
| 10 | + |
9 | 11 | ## What Rezi Is For |
10 | 12 |
|
11 | 13 | Rezi is aimed at terminal applications that need more than line-oriented output: multi-panel layouts, routed screens, focusable controls, forms, tables, overlays, testing support, and predictable behavior under keyboard and mouse input. |
12 | 14 |
|
| 15 | +## Why Rezi |
| 16 | + |
| 17 | +- Declarative application structure without requiring React |
| 18 | +- Deterministic render and input contracts for testable TUI workflows |
| 19 | +- Native-backed framebuffer diffing and terminal output through Zireael |
| 20 | +- First-party widgets for real app surfaces: forms, tables, overlays, routing, charts, and command flows |
| 21 | +- Behavior-first test utilities for rendering, routing, focus, and terminal scenarios |
| 22 | + |
13 | 23 | ## What Rezi Includes |
14 | 24 |
|
15 | 25 | - Layout primitives for rows, columns, grids, panels, spacing, and layered screens |
@@ -79,7 +89,21 @@ bun run start |
79 | 89 |
|
80 | 90 | - `minimal` - small single-screen starter |
81 | 91 | - `cli-tool` - routed multi-screen workflow starter |
82 | | -- `starship` - larger console-style starter showing tabs, charts, forms, and overlays |
| 92 | +- `starship` - polished command-console showcase with routing, charts, canvas, forms, and overlays |
| 93 | + |
| 94 | +## Starship Demo |
| 95 | + |
| 96 | +Use the template when you want a larger example of Rezi's app architecture: |
| 97 | + |
| 98 | +```bash |
| 99 | +npm create rezi my-console -- --template starship |
| 100 | +``` |
| 101 | + |
| 102 | +The demo intentionally shows the broad surface area. For new applications, start with `minimal` or `cli-tool` unless you specifically want the full showcase. |
| 103 | + |
| 104 | +## Feature Maturity |
| 105 | + |
| 106 | +Rezi is still pre-alpha, but not every feature has the same risk profile. Core layout, input, routing, tables, virtual lists, command palette, and file-picker workflows are the current hardening focus. Richer surfaces such as advanced graphics, charts, code/editor-style widgets, and specialized dialogs should be treated as beta or experimental while the public API settles. |
83 | 107 |
|
84 | 108 | ## Packages |
85 | 109 |
|
|
0 commit comments