Repolode
1bye

1bye/rake

GPUIをベースに、実行中のアプリをエージェントから操作・検査できる、単一コードベースでデスクトップアプリとブラウザーアプリを構築するRustフレームワーク。

スター
124
フォーク
3
未解決の Issue
1
最終コミット
3 時間前

これは何?

Rakeは、ZedのUIフレームワークであるGPUIをベースにしたRustフレームワークです。1つのアプリケーションから、ネイティブデスクトップとブラウザー上のWebAssemblyの両方をターゲットにできます。型付きルート、独立したタブ、マルチウィンドウに対応し、画面遷移時や終了時には保存・破棄・キャンセルを促すガードを利用できます。

HTTP、ストレージ、ファイル、クリップボード、設定の共通サービスに加え、ビューやタブに紐づけて管理できる非同期ローダーも備えています。`view!`マクロを使うと、GPUIの要素をマークアップ風の構文で記述できます。DMG、NSIS、AppImageなどの形式でパッケージ化でき、署名付きの更新コントローラーも任意で利用できます。

RakeはAIエージェントによる操作も想定して設計されています。アプリがJSON Schema付きのコマンドを公開でき、JSON CLIで状態を検査したり、Chrome DevTools Protocol経由で操作したりできます。現在はアルファ版のため、リビジョンによってAPIが変更される可能性があります。

主な機能

  • 011つのRustコードベースから、デスクトップ向けとブラウザー上のWebAssembly向けのビルドを作成できます。
  • 02型付きルートに対応し、独立したタブと履歴、マルチウィンドウを利用できます。
  • 03画面遷移、ウィンドウを閉じる操作、終了時に適用される保存・破棄・キャンセルのガードを備えています。
  • 04HTTP、ストレージ、ファイル、クリップボード、設定の共通サービスを利用できます。
  • 05実行中のアプリを検査するための、JSON Schema付きコマンドとJSON CLIを備えています。
  • 06DMG、NSIS、AppImage向けのパッケージ化に対応し、署名付きアップデートも任意で利用できます。

ユースケース

  • GPUIを使って、ブラウザーでも動作するクロスプラットフォームのRustデスクトップアプリを構築する。
  • コマンドやCDPを通じて、AIエージェントに実行中のGPUIインターフェースを操作・テストさせる。
  • Rustプロジェクトから、署名付きデスクトップリリースを自動更新コントローラーとともに配布する。

クイックスタート

  1. 1

    リポジトリからRake CLIをインストールする

    cargo install --git https://github.com/1bye/rake --locked rake-cli
  2. 2

    hello-rakeという名前の新しいアプリを作成する

    rake new hello-rake
  3. 3

    アプリのディレクトリに移動する

    cd hello-rake
  4. 4

    開発モードでアプリを実行する

    rake dev

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

  • Rakeはアルファ版のため、リビジョン間でAPIが変更される場合があります。
  • Rust 1.98.0、ネイティブ開発ツール、Python 3.11以降が必要です。
  • ブラウザー向けターゲットには、WebGPU対応ブラウザーと対応するwasm-bindgen-cliが必要です。GPUI KitとAppKitのコントロールはネイティブ専用で、AppKitはmacOS専用です。

収録されている特集

トピック

よくある質問

rake とは?
GPUIをベースに、実行中のアプリをエージェントから操作・検査できる、単一コードベースでデスクトップアプリとブラウザーアプリを構築するRustフレームワーク。 Rakeは、ZedのUIフレームワークであるGPUIをベースにしたRustフレームワークです。1つのアプリケーションから、ネイティブデスクトップとブラウザー上のWebAssemblyの両方をターゲットにできます。型付きルート、独立したタブ、マルチウィンドウに対応し、画面遷移時や終了時には保存・破棄・キャンセルを促すガードを利用できます。
rake は無料で使えますか?ライセンスは?
rake は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
rake は今もメンテナンスされていますか?
活発にメンテナンス中。rake の最終コミットは 2026年11月7日 です。
rake は何に使えますか?
GPUIを使って、ブラウザーでも動作するクロスプラットフォームのRustデスクトップアプリを構築する。 コマンドやCDPを通じて、AIエージェントに実行中のGPUIインターフェースを操作・テストさせる。 Rustプロジェクトから、署名付きデスクトップリリースを自動更新コントローラーとともに配布する。
rake のインストール方法は?
リポジトリからRake CLIをインストールする: cargo install --git https://github.com/1bye/rake --locked rake-cli hello-rakeという名前の新しいアプリを作成する: rake new hello-rake アプリのディレクトリに移動する: cd hello-rake 開発モードでアプリを実行する: rake dev
rake はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/1bye/rake

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

関連プロジェクト