랭킹으로 돌아가기

matrix-org/matrix-rust-sdk

Rust

Matrix Client-Server SDK for Rust

matrix-orgrustsdk
스타 성장
스타
2.2k
포크
462
주간 성장
이슈
289
1k2k
2020년 2월2022년 3월2024년 5월2026년 7월
아티팩트crates.iocargo add matrix-rust-sdk
README

Matrix Rust SDK

Your all-in-one toolkit for creating Matrix clients with Rust, from simple bots to full-featured apps.


The Matrix Rust SDK is a collection of libraries that make it easier to build Matrix clients in Rust.

Element logo

Development of the SDK is proudly sponsored and maintained by Element. Element uses the SDK in their next-generation mobile apps Element X on iOS and Android and has plans to introduce it to the web and desktop clients as well.

The SDK is also the basis for multiple Matrix projects and we welcome contributions from all.

Purpose

The SDK takes care of the low-level details like encryption, syncing, and room state, so you can focus on your app's logic and UI. Whether you're writing a small bot, a desktop client, or something in between, the SDK is designed to be flexible, async-friendly, and ready to use out of the box.

Project structure

The Matrix Rust SDK is made up of several crates that build on top of each other. The following crates are expected to be usable as direct dependencies:

  • matrix-sdk-ui – A high-level client library that makes it easy to build full-featured UI clients with minimal setup. Check out our reference client, multiverse, for an example.
  • matrix-sdk – A mid-level client library, ideal for building bots, custom clients, or higher-level abstractions. You can find example usage in the examples directory.
  • matrix-sdk-crypto – A standalone encryption state machine with no network I/O, providing end-to-end encryption support for Matrix clients and libraries. See the crypto tutorial for a step-by-step introduction.

All other crates are effectively internal-only and only structured as crates for organizational purposes and to improve compilation times. Direct usage of them is discouraged.

Status

The library is considered production ready and backs multiple client implementations such as Element X [1] [2], Fractal and iamb. Client developers should feel confident to build upon it.

Bindings

The higher-level crates of the Matrix Rust SDK can be embedded in other environments such as Swift, Kotlin, JavaScript, and Node.js. Check out the bindings/ directory to learn more about how to integrate the SDK into your language of choice.

License

Apache-2.0

관련 저장소
matrix-org/synapse

Synapse: Matrix homeserver written in Python/Twisted.

PythonPyPIApache License 2.0pythonmatrix-org
matrix-org.github.io/synapse
12.1k2.1k
spantaleev/matrix-docker-ansible-deploy

🐳 Matrix (An open network for secure, decentralized communication) server setup using Ansible and Docker

JinjaGNU Affero General Public License v3.0matrix-orgdocker
6.4k1.2k
matrix-org/dendrite

Dendrite is a second-generation Matrix homeserver written in Go!

GoGo ModulesApache License 2.0golangmatrix-org
matrix-org.github.io/dendrite/
5.6k659
cinnyapp/cinny

Yet another matrix client

TypeScriptnpmGNU Affero General Public License v3.0matrixclient
cinny.in
3.8k554
mautrix/whatsapp

A Matrix-WhatsApp puppeting bridge

GoGo ModulesGNU Affero General Public License v3.0matrix-orgmatrix-appservice
go.mau.fi/mautrix-whatsapp/
1.8k262
mautrix/telegram

A Matrix-Telegram puppeting bridge

GoGo ModulesGNU Affero General Public License v3.0matrix-orgmatrix-appservice
go.mau.fi/mautrix-telegram/
1.7k243
gomuks/gomuks

A Matrix client written in Go.

GoGo ModulesGNU Affero General Public License v3.0golangmatrix
gomuks.app
1.7k142
tulir/gomuks

A Matrix client written in Go.

TypeScriptnpmGNU Affero General Public License v3.0golangmatrix
maunium.net/go/gomuks
1.4k124
ulyssa/iamb

A Matrix client for Vim addicts

Rustcrates.ioApache License 2.0matrix-clientrust
iamb.chat
1.2k108
Awesome-Technologies/synapse-admin

Admin console for synapse Matrix homeserver

TypeScriptnpmApache License 2.0matrix-orgreact
awesome-technologies.github.io/synapse-admin/
1.2k168
commetchat/commet

Your space to connect

DartGNU Affero General Public License v3.0matrix-org
commet.chat
1.1k70