Go製のキーボード操作対応ターミナルダウンロードマネージャー。ファイルを並列チャンクに分割し、複数ミラーからダウンロードできます。
charmbracelet/bubbletea
The Elm Architectureのmodel-update-viewパターンを使ってターミナルUIを構築するためのGoフレームワークです。
- スター
- 45,471
- フォーク
- 4,035
- 未解決の Issue
- 272
- 最終コミット
- 13 日前
これは何?
Bubble Teaは、小さな対話型ツールから大規模な全画面プログラムまで、ターミナルアプリケーションを構築するためのGoフレームワークです。The Elm Architectureに従っており、状態を保持するmodel、キー入力などのメッセージを処理するUpdate関数、その状態からインターフェースを描画するView関数でアプリケーションを構成します。実行時の再描画はフレームワークが担うため、開発者はターミナル出力を手動で管理せずにUIを記述できます。
インライン、全画面、混在レイアウトに対応しています。セルベースのレンダラー、色数に制限のあるターミナル向けの色のダウンサンプリング、代替画面モードやマウストラッキングなどのオプションを設定できる宣言的なビュー、キーボードとマウス入力の処理、クリップボード対応を備えています。コマンドを使えば、タイマーやネットワークリクエストなどのI/Oを、インターフェースをブロックせずに実行できます。
Bubble Teaは、同じプロジェクトの関連ライブラリと組み合わせて使われることがよくあります。テキスト入力やビューポートなどの既製コンポーネントを提供するBubbles、スタイル設定とレイアウトを担うLip Gloss、アニメーション用のHarmonicaがあります。
主な機能
- 01modelのInit、Update、ViewメソッドでThe Elm Architectureを実装します。
- 02セルベースのレンダラーと組み込みの色のダウンサンプリングを提供します。
- 03インライン、全画面、混在のターミナルレイアウトに対応します。
- 04キーボードとマウス入力を処理し、ネイティブのクリップボードアクセスにも対応します。
- 05タイマーやリクエストなどの非同期I/Oを実行するコマンドシステムを備えています。
ユースケース
- Goでフォーム、リスト、メニューを備えた対話型コマンドラインツールを構築する。
- 全画面のターミナルダッシュボードやファイルマネージャーを作成する。
- 入力イベントに反応するターミナルゲームや可視化ツールを開発する。
クイックスタート
- 1
GoコードにBubble Tea v2パッケージをインポートする
- 2
bubbleteaとその依存関係をダウンロードする
go mod tidy
使う前に知っておきたいこと
- Goで書かれているため、使用するにはGoの実用的な知識が必要です。
- v2ではAPIが変更されているため、v1からアップグレードする際は別途アップグレードガイドに従う必要があります。
トピック
よくある質問
- bubbletea とは?
- The Elm Architectureのmodel-update-viewパターンを使ってターミナルUIを構築するためのGoフレームワークです。 Bubble Teaは、小さな対話型ツールから大規模な全画面プログラムまで、ターミナルアプリケーションを構築するためのGoフレームワークです。The Elm Architectureに従っており、状態を保持するmodel、キー入力などのメッセージを処理するUpdate関数、その状態からインターフェースを描画するView関数でアプリケーションを構成します。実行時の再描画はフレームワークが担うため、開発者はターミナル出力を手動で管理せずにUIを記述できます。
- bubbletea は無料で使えますか?ライセンスは?
- bubbletea は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- bubbletea は今もメンテナンスされていますか?
- 活発にメンテナンス中。bubbletea の最終コミットは 2026年10月8日 です。
- bubbletea は何に使えますか?
- Goでフォーム、リスト、メニューを備えた対話型コマンドラインツールを構築する。 全画面のターミナルダッシュボードやファイルマネージャーを作成する。 入力イベントに反応するターミナルゲームや可視化ツールを開発する。
- bubbletea のインストール方法は?
- GoコードにBubble Tea v2パッケージをインポートする bubbleteaとその依存関係をダウンロードする: go mod tidy
- bubbletea はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/charmbracelet/bubbletea
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
シェルがアイドル状態になると起動し、アニメーションを表示するGo製ターミナルスクリーンセーバー。
プロセス、ポート、コンテナ、ファイルを起点までたどり、起動したシステムの連鎖を明らかにするCLI/TUIです。
標準UNIXツールのpassと互換性があり、GPGで暗号化したシークレットをgitでバージョン管理する、チーム向けのコマンドラインパスワードマネージャー。
昇格権限なしでローカルネットワーク上のデバイスを検出・探索できる、Go製のターミナルUIツール。