Repolode
charmbracelet

charmbracelet/lipgloss

CSS風の宣言的なスタイル定義で、テキストベースのターミナルUIを装飾・レイアウトするGoライブラリ。

スター
11,943
フォーク
417
未解決の Issue
163
最終コミット
11 日前

これは何?

Lip Glossは、ターミナルで装飾付きテキストやレイアウトを描画するGoライブラリです。スタイルは宣言的に定義でき、チェーンでつなげて、色、テキストの書式、パディング、マージン、ボーダー、配置、幅や高さの固定などを指定できます。CSSに慣れている開発者なら、すぐに使いこなせるでしょう。

個々のスタイルに加えて、テキストブロックの結合や配置、描画後のサイズ計測、グラデーション用の色のブレンド、レイヤー化されたコンテンツの合成を行うヘルパーも備えています。テーブル、リスト、ツリーの描画には、それぞれ専用のサブパッケージを利用できます。カラー出力は、true colorから256色または16色へ自動的にダウンサンプリングされ、出力先がTTYでなければ色が完全に除去されます。

Lip Glossは、ターミナルアプリケーション向けのCharmフレームワークであるBubble Teaと組み合わせて使えるよう設計されています。また、単独で整形済みのコマンドライン出力を生成する用途にも使えます。

主な機能

  • 01色、テキストの書式、パディング、マージン、ボーダーを指定できる、チェーン可能なCSS風スタイル定義
  • 02true colorからANSI 256色または16色への自動ダウンサンプリング
  • 03テキストブロックの結合、配置、サイズ計測を行うヘルパー
  • 04テーブル、リスト、ツリーを描画するサブパッケージ
  • 05セル単位でのレイヤーコンテンツの合成と、グラデーション用の色のブレンド

ユースケース

  • Bubble Tea製ターミナルアプリケーションのビューを装飾する
  • コマンドラインツールで整形済みのテーブル、リスト、ツリーを作成する
  • ログやカラー非対応のターミナルでも見やすさを保ちながら、色付き出力を表示する

クイックスタート

  1. 1

    Goでライブラリをインストールします

    go get charm.land/lipgloss/v2

トピック

よくある質問

lipgloss とは?
CSS風の宣言的なスタイル定義で、テキストベースのターミナルUIを装飾・レイアウトするGoライブラリ。 Lip Glossは、ターミナルで装飾付きテキストやレイアウトを描画するGoライブラリです。スタイルは宣言的に定義でき、チェーンでつなげて、色、テキストの書式、パディング、マージン、ボーダー、配置、幅や高さの固定などを指定できます。CSSに慣れている開発者なら、すぐに使いこなせるでしょう。
lipgloss は無料で使えますか?ライセンスは?
lipgloss は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
lipgloss は今もメンテナンスされていますか?
活発にメンテナンス中。lipgloss の最終コミットは 2026年10月11日 です。
lipgloss は何に使えますか?
Bubble Tea製ターミナルアプリケーションのビューを装飾する コマンドラインツールで整形済みのテーブル、リスト、ツリーを作成する ログやカラー非対応のターミナルでも見やすさを保ちながら、色付き出力を表示する
lipgloss のインストール方法は?
Goでライブラリをインストールします: go get charm.land/lipgloss/v2
lipgloss はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/charmbracelet/lipgloss

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト