このプロジェクトについて

Matrix Rust SDKは、RustでMatrixクライアントを構築しやすくするためのライブラリ群です。開発はElementがスポンサー兼メンテナーとして行っており、同社は次世代モバイルアプリであるiOSおよびAndroid向けのElement XでこのSDKを使用しており、将来的にはWebおよびデスクトップクライアントにも展開する計画です。 目的: SDKは、暗号化、同期、ルーム状態などの低レベルの詳細を処理するため、開発者はアプリのロジックとUIに集中できます。これは、小規模なボット、デスクトップクライアント、およびその間のあらゆるものに適しており、柔軟で非同期に適したものと説明されています。 プロジェクト構造: SDKは、相互に構築されるいくつかのクレートで構成されています。直接依存関係として使用できると期待されるクレートには、以下が含まれます: - matrix-sdk-ui: 最小限のセットアップで本格的なUIクライアントを構築するための高レベルクライアントライブラリ。リファレンスクライアントであるmultiverseが例として提供されています。 - matrix-sdk: ボット、カスタムクライアント、または高レベルの抽象化に適した中レベルクライアントライブラリ。examplesディレクトリに使用例があります。 - matrix-sdk-crypto: ネットワークI/Oを伴わないスタンドアロンの暗号化ステートマシンで、エンドツーエンド暗号化サポートを提供し、ステップバイステップの暗号化チュートリアルが付属しています。 他のクレートは事実上内部専用と説明されており、整理とコンパイル時間のためにクレートとして構造化され、直接使用は推奨されていません。 ステータス: このライブラリは本番環境対応と見なされており、iOSおよびAndroid向けのElement X、Fractal、iambなど、複数のクライアント実装を支えています。クライアント開発者はこれを基盤に構築することが推奨されています。 バインディング: 高レベルのクレートは、Swift、Kotlin、JavaScript、Node.jsなどの他の環境に埋め込むことができ、bindingsディレクトリには他の言語への統合が文書化されています。 ライセンス: Apache-2.0。