TL;DR

Rust で TUI を作るためのクレート。

なぜ必要か

公式サイトによると、Ratatui は高速で軽量な、表現力の高いターミナルの UI を作るためのライブラリである。描画は 1 ミリ秒未満で終わり、小さな tmux のペインでも大きなターミナルでも表示が崩れない。設計の段階でメモリ安全、スレッド安全、型安全になっている。

仕組み

C への依存がない純粋な Rust のライブラリで、イミディエイトモードで描画する。グラフ、スパークライン、表、ゲージ、スクロールできるリスト、プログレスバーなどのウィジェットが用意されている。レイアウトは制約で指定し、ターミナルの大きさに合わせて自動で調整される。no_std に対応しており、組み込み向けのターゲットでも使える。

例

cargo-generate 用のテンプレートが用意されており、簡単にプロジェクトを作れる。

cargo generate ratatui/templates

関連

出典