mirror of
https://github.com/DioxusLabs/dioxus
synced 2024-11-30 08:00:21 +00:00
.. | ||
README.md |
Dioxus は、Rust でクロスプラットフォームのユーザー・インターフェースを構築するための、移植性が高く、パフォーマンスと人間工学に基づいたフレームワークです。
fn app(cx: Scope) -> Element {
let mut count = use_state(cx, || 0);
cx.render(rsx! {
h1 { "High-Five counter: {count}" }
button { onclick: move |_| count += 1, "Up high!" }
button { onclick: move |_| count -= 1, "Down low!" }
})
}
Dioxus は、ウェブアプリ、デスクトップアプリ、静的サイト、モバイルアプリ、TUI アプリ、ライブビューアプリなどの配信に使用できます。Dioxus は完全にレンダラーに依存せず、あらゆるレンダラーのプラットフォームとして使用可能です。
React を知っているのであれば、Dioxus はすでにご存知でしょう。
ユニークな特徴:
- 10 行以下のコードでネイティブに動作するデスクトップアプリ(Electron は不要!)。
- 人間工学に基づいたパワフルな状態管理。
- 包括的なインラインドキュメント - すべての HTML 要素、リスナー、イベントのホバーとガイド。
- 驚異的な速さ 🔥 🔥 と極めて高いメモリ効率
- 高速反復のための統合されたホットリロード
- コルーチンとサスペンスによるファーストクラスの非同期サポート
- などなど!リリース記事全文を読む。
対応プラットフォーム
Web |
|
デスクトップ |
|
モバイル |
|
ライブビュー |
|
ターミナル |
|
なぜ Dioxus?
アプリを構築するための選択肢は山ほどあるのに、なぜ Dioxus を選ぶのでしょうか?
まず第一に、Dioxus は開発者の体験を優先しています。これは Dioxus 独自のさまざまな機能に反映されています:
- メタ言語(RSX)とそれに付随する VSCode 拡張機能のオートフォーマット機能
- デスクトップとウェブの両方で RSX のインタプリタを使用したホットリロード
- 優れたドキュメントの重視 - 私たちのガイドは完全で、私たちの HTML 要素は文書化されています。
- 簡素化のための多大な研究
Dioxus は非常に拡張性の高いプラットフォームでもあります。
- 非常にシンプルに最適化されたスタックマシンを実装することで、新しいレンダラーを簡単に構築できます。
- コンポーネントやカスタム・エレメントもビルドして共有できます
Dioxus は素晴らしいが、なぜ私には使えないのか?
- まだ完全に成熟していません。API はまだ移行中で、いろいろなものが壊れるかもしれません(私たちはそれを避けようとしていますが)。
- no-std 環境で動作させる必要がある。
- UI を構築する React-hooks モデルが好きではない場合
コントリビュート
- 私たちの issue tracker で問題を報告してください。
- ディスコードに参加して質問してください!
ライセンス
このプロジェクトのライセンスは MIT ライセンス です。
あなたが明示的に別段の定めをしない限り、あなたによって Dioxus に含めるために意図的に提出されたコントリビュートは、 いかなる追加条件もなく、MIT としてライセンスされるものとします。