Repolode
DioxusLabs

DioxusLabs/dioxus

React風のコンポーネントとシグナルを備え、単一のコードベースからWeb、デスクトップ、モバイルアプリを構築できるRustフレームワーク。

代替できる製品:React NativeElectron

スター
39,451
フォーク
1,938
未解決の Issue
850
最終コミット
4 日前

これは何?

Dioxusは、Web、デスクトップ、iOS、Android、およびサーバー上で動作するユーザーインターフェースを構築するためのRustフレームワークです。HTMLに似たRSXマクロでコンポーネントを記述し、通常のHTMLとCSSでスタイリングします。状態管理にはシグナルを使い、組み込みのCLI(dx)から、ホットリロードに対応した開発サーバーや、デプロイ用のバンドルを利用できます。

フルスタックアプリ向けに、DioxusはWebフレームワークのaxumと連携し、サーバー関数、サーバーサイドレンダリング、ハイドレーション、WebSockets、SSE、ストリーミング、ファイルのアップロードとダウンロード、ミドルウェアを提供します。レンダリング先には、WebAssembly経由のDOM、システムのWebView、サーバーサイドレンダリング、liveview、実験的なWGPUベースのレンダラーがあります。AndroidではJNI、AppleプラットフォームではObjective-Cを通じてネイティブAPIを呼び出せます。

また、shadcn/uiとRadix Primitivesをモデルにしたプリミティブなコンポーネントも公式に提供しています。dx CLIでは、モバイル向けの.ipaファイルと.apkファイルをビルドできます。

主な機能

  • 01単一のRustコードベースで、Web、デスクトップ、iOS、Androidを対象に開発できる。
  • 02マークアップとスタイルのホットリロードに対応し、Rustコードのホットパッチにも実験的に対応。
  • 03React風のコンポーネントモデルと、シグナルベースの状態管理。
  • 04axumとの連携、サーバー関数、ハイドレーション対応のSSRによるフルスタック開発。
  • 05開発サーバー、バンドル、モバイルパッケージのビルドに対応する組み込みのdx CLI。

ユースケース

  • 同じコードからデスクトップ版も作れる、RustベースのWebアプリを開発する。
  • プラットフォームAPIを呼び出せる、ネイティブアプリのような操作感のモバイルアプリをRustで作成する。
  • axumを基盤とするサーバーバックエンドを備えたフルスタックRustアプリケーションを開発する。
  • ロジックをRustに保ちながら、HTMLとCSSでUIコンポーネントを試作する。

クイックスタート

  1. 1

    cargo で git から Dioxus CLI をインストールする

    cargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --locked
  2. 2

    リポジトリのルートから example を実行する

    cargo run --example <example>
  3. 3

    web プラットフォームで hot-reloading を有効にして example を配信する

    dx serve --example <example> --platform web -- --no-default-features

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

  • main ブランチの example は最新の安定版ではなく git 版を対象としています。安定版の example には 0.6 ブランチを使用してください。
  • dx serve --hotpatch による hot-patching や WGPU renderer など、一部の注目機能は experimental とされています。

トピック

よくある質問

dioxus とは?
React風のコンポーネントとシグナルを備え、単一のコードベースからWeb、デスクトップ、モバイルアプリを構築できるRustフレームワーク。 Dioxusは、Web、デスクトップ、iOS、Android、およびサーバー上で動作するユーザーインターフェースを構築するためのRustフレームワークです。HTMLに似たRSXマクロでコンポーネントを記述し、通常のHTMLとCSSでスタイリングします。状態管理にはシグナルを使い、組み込みのCLI(dx)から、ホットリロードに対応した開発サーバーや、デプロイ用のバンドルを利用できます。
dioxus は無料で使えますか?ライセンスは?
dioxus は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
dioxus は今もメンテナンスされていますか?
活発にメンテナンス中。dioxus の最終コミットは 2026年10月17日 です。
dioxus は何に使えますか?
同じコードからデスクトップ版も作れる、RustベースのWebアプリを開発する。 プラットフォームAPIを呼び出せる、ネイティブアプリのような操作感のモバイルアプリをRustで作成する。 axumを基盤とするサーバーバックエンドを備えたフルスタックRustアプリケーションを開発する。 ロジックをRustに保ちながら、HTMLとCSSでUIコンポーネントを試作する。
dioxus のインストール方法は?
cargo で git から Dioxus CLI をインストールする: cargo install --git https://github.com/DioxusLabs/dioxus dioxus-cli --locked リポジトリのルートから example を実行する: cargo run --example <example> web プラットフォームで hot-reloading を有効にして example を配信する: dx serve --example <example> --platform web -- --no-default-features
dioxus はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/DioxusLabs/dioxus

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

関連プロジェクト