Repolode
anomalyco

anomalyco/rune

macOS、Windows、Linux、Webに対応し、独自のレンダラー、テキスト処理、レイアウト、スプリングアニメーションを備えた、GPUで描画するRust製UIフレームワーク。

スター
3,536
フォーク
100
未解決の Issue
21
最終コミット
4 時間前

これは何?

RuneはRust製のUIフレームワークです。独自のレンダラー、テキスト処理、レイアウトエンジン、スプリングベースのモーションを使って、GPU上にインターフェースを描画します。単一のRustコードベースでmacOS、Windows、Linux、Webを対象にできます。インターフェースは要素ツリーを返すRust関数として記述し、ビルダースタイルの呼び出しでサイズ、塗りつぶし、角丸、フォーカス、ロール、押下ハンドラーなどを指定します。

すべてのアプリをヘッドレスで実行できるため、スクリプトやコーディングエージェントからフレームをPNGにレンダリングしたり、要素ツリーをダンプしたり、スクリプト化した入力でUIを操作したりできます。これにより、ウィンドウを開かずに視覚的な出力を確認できます。リポジトリにはexamplesディレクトリ、分割差分などのパーツを含むrune-kitコンポーネントライブラリ、GPU視覚効果が含まれています。

このプロジェクトはプレリリース段階のため、依存関係に追加する際はdevブランチのgitリビジョンを固定するようREADMEで推奨されています。

主な機能

  • 01独自のレンダラー、テキスト処理、レイアウト、スプリングアニメーションによるネイティブGPU描画。
  • 02単一のRustコードベースでmacOS、Windows、Linux、Webに対応。
  • 03ヘッドレスモードでPNGをレンダリングし、確認用に要素ツリーをダンプ。
  • 04スクリプト化した入力でテストやエージェントからUIを操作可能。
  • 05rune-kitコンポーネントライブラリとGPUエフェクトを収録。

ユースケース

  • 独自のGPU UIを使った、RustによるクロスプラットフォームのデスクトップアプリやWebアプリの開発。
  • ディスプレイのない環境で、コーディングエージェントにUIを構築させ、視覚的に検証。
  • 画面をPNGにレンダリングして行う、自動ビジュアルリグレッションチェック。
  • スプリングベースのモーションを使った、アニメーション付きインターフェースのプロトタイピング。

クイックスタート

  1. 1

    Runeを開発用の特定のリビジョンに固定して、git依存関係として追加する

    rune = { git = "https://github.com/anomalyco/rune", rev = "<dev rev>" }
  2. 2

    helloのサンプルを出発点にして、crateのドキュメントを読む

使う前に知っておきたいこと

  • Runeはプレリリース版のため、破壊的変更が発生する可能性があります。
  • 公開済みのcrateリリースがないため、gitリビジョンを固定する必要があります。

収録されている特集

トピック

よくある質問

rune とは?
macOS、Windows、Linux、Webに対応し、独自のレンダラー、テキスト処理、レイアウト、スプリングアニメーションを備えた、GPUで描画するRust製UIフレームワーク。 RuneはRust製のUIフレームワークです。独自のレンダラー、テキスト処理、レイアウトエンジン、スプリングベースのモーションを使って、GPU上にインターフェースを描画します。単一のRustコードベースでmacOS、Windows、Linux、Webを対象にできます。インターフェースは要素ツリーを返すRust関数として記述し、ビルダースタイルの呼び出しでサイズ、塗りつぶし、角丸、フォーカス、ロール、押下ハンドラーなどを指定します。
rune は無料で使えますか?ライセンスは?
rune は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
rune は今もメンテナンスされていますか?
活発にメンテナンス中。rune の最終コミットは 2026年11月7日 です。
rune は何に使えますか?
独自のGPU UIを使った、RustによるクロスプラットフォームのデスクトップアプリやWebアプリの開発。 ディスプレイのない環境で、コーディングエージェントにUIを構築させ、視覚的に検証。 画面をPNGにレンダリングして行う、自動ビジュアルリグレッションチェック。 スプリングベースのモーションを使った、アニメーション付きインターフェースのプロトタイピング。
rune のインストール方法は?
Runeを開発用の特定のリビジョンに固定して、git依存関係として追加する: rune = { git = "https://github.com/anomalyco/rune", rev = "<dev rev>" } helloのサンプルを出発点にして、crateのドキュメントを読む
rune はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/anomalyco/rune

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

関連プロジェクト