Rustで構築されたGPU加速イミディエイトモードUIライブラリ、wgpu・winit・taffyベース
中辛 の解説
Rustの即時モードUI(毎フレーム再描述)ライブラリで、wgpu(GPU描画)・winit(ウィンドウ・イベント管理)・taffy(Flexboxレイアウト)を組み合わせています。ボタン・チェックボックス・スライダー・テキスト入力・スクロールビュー・カード等の13種ウィジェットを備え、カスタムスタイル構造体でボタン・チェックボックス・テキスト入力など各種の見た目を細かく調整できます。グラデーション(リニア・ラジアル・コニック)・ソフトシャドウ・SDF角丸矩形・テキスト・クリップ処理をGPUで一括実行し、単一draw callにバッチ処理されます。1.85以上のRustc、Vulkan/Metal/DirectX12/OpenGL ESいずれかのGPUバックエンドが必要で、デモコードは公式ドキュメントに複数用意されています。早期段階(0.x)で破壊的な変更の可能性あり。
こんなリポジトリです
こんなときに便利です
- ゲームやビジュアルアプリケーションで高性能なカスタムUIを実装したいとき
- CPU負荷を抑えながら複雑なグラデーションやアニメーションを含むUIを構築する場合
- クロスプラットフォーム(Windows・macOS・Linux)で統一した見た目のデスクトップアプリを開発する際
主な機能
ほかとの違い
即時モードでありながらウィジェット単位の安定したid管理とGPU最適化キャッシング(グラデーション・グリフアトラス)を組み合わせることで、マークアップやretain型状態木を要さずに高速で美しいUIを実現しています。
食べた人たち
実際に使ってみた人の記録です — 一言も完走の記録も、確認のうえで公開しています。
このリポジトリの作り方
はじめてですか? むずかしくありません — 上から順にたどれば、自分の環境で動かして味見できます。
準備するもの
- Rust 1.85以上(2024年版エディション)
- Vulkan・Metal・DirectX12・OpenGL ES のいずれかをサポートするGPU/ドライバ
- Linux環境ではWaylandまたはX11セッション
すぐ動かしてみるRust (cargo)
ギット飯がリポジトリの構成を確認して組み立てた実行コマンドです。ターミナルに貼り付ければ、取得から実行までまとめて進みます。
git clone --depth 1 https://github.com/artemtsitronov/glacex.git && cd glacex && cargo run
コードは自分の環境で動きます — はじめて見るリポジトリなら、中身にひととおり目を通してから実行するのがおすすめです。
README の詳しい手順を見る
- Cargo.tomlに追加
cargo add glacex
- Linux の場合は開発用ライブラリをインストール(Debian/Ubuntu例)
sudo apt install libx11-dev libxcursor-dev libxrandr-dev libxi-dev libxkbcommon-dev libwayland-dev
- カウンター例をsrc/main.rsに記述
use glacex::{App, Button, Color, Label, Ui, Widget, column};
struct Counter {
count: u32,
}
impl Widget for Counter {
type Output = ();
fn ui(&mut self, ui: &mut Ui) {
ui.set_bgcolor(Color::rgb(18, 18, 22));
let mut label = Label::new("count_label", format!("Count: {}", self.count));
let mut button = Button::new("increment_btn", "Increment");
column![&mut label, &mut button]
.spacing(12.0)
.arrange_at([40.0, 40.0], ui);
if button.clicked() {
self.count += 1;
}
}
}
fn main() {
App::new(Counter { count: 0 }).run();
}
- プロジェクト実行
cargo run
ギット飯トライで味見
入れるのが面倒で少し不安だったなら — 安全スキャンからインストールまで、ターミナル一行で終わります。
ターミナルに貼り付ければ、ギット飯の安全スキャン → 隔離フォルダへ clone → インストール → 実行方法の案内まで自動です。はじめてでも大丈夫 — この一行だけです。
npx gitbap-try artemtsitronov/glacex
Node.js さえあれば、インストールなしで動きます · ギット飯トライとは? →
スター推移 · 7日
使いやすさ · まねしやすいか
- ゆるいライセンス
- テストあり
- サンプル集
- 最近の更新
- AGENTS.md
- llms.txt
- テンプレート
最近の更新あり · 2026 年に作成
「デザイン・UI コンポーネント」 こういうリポジトリを毎週受け取りませんか?
毎週月曜の朝、選んだ一膳だけ。広告なし · いつでも解除。
自分のリポジトリですか? README にギット飯バッジを貼る
[](https://www.gitbap.com/r/artemtsitronov/glacex)Claude からそのまま使う — ギット飯のつなぎ方
ギット飯を Claude につなぐと、こうしたリポジトリを Claude・Cursor・Codex から直接さがして試せます。
Claude の設定 → コネクタにこのアドレスを貼り付け。
https://www.gitbap.com/api/mcpプラグインを入れると /gitbap-trending·/gitbap-try のスラッシュコマンドで、その場でリポジトリを試せます。Claude Code で下の 2 行を順に実行してください。
/plugin marketplace add jakeparkcolde/gitbap-cowork/plugin install gitbap-cowork@gitbapAI が README をもとに要約しました · 原文を見る