All Projects → ruma → Ruma

ruma / Ruma

Licence: mit
A set of Rust crates for interacting with the Matrix chat network.

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Ruma

Chatview
This is an Android library which can be used to add chat functionality to your android application with just a few lines of code.
Stars: ✭ 211 (+11.64%)
Mutual labels:  library, chat
Chat Ui Kit React
Build your own chat UI with React components in few minutes. Chat UI Kit from chatscope is an open source UI toolkit for developing web chat applications.
Stars: ✭ 131 (-30.69%)
Mutual labels:  library, chat
Chatify
A Laravel package that allows you to add a complete user messaging system into your new/existing Laravel application.
Stars: ✭ 885 (+368.25%)
Mutual labels:  library, chat
Gappein Chat Sdk
A plug and play modular toolkit for integrating the Chat feature on top of Firebase!
Stars: ✭ 154 (-18.52%)
Mutual labels:  library, chat
Go Tox
Go wrapper for the toxcore library - contributions welcome!
Stars: ✭ 49 (-74.07%)
Mutual labels:  library, chat
React Messenger
Chat UX components built with React, inspired by Facebook Messenger
Stars: ✭ 167 (-11.64%)
Mutual labels:  library, chat
Multisnaprecyclerview
Android library for multiple snapping of RecyclerView
Stars: ✭ 2,356 (+1146.56%)
Mutual labels:  library
Wechat
聊天系统、Vue.js、React.js、node.js、MongoDB、websocket、socket.io、前后端分离、毕业设计。
Stars: ✭ 188 (-0.53%)
Mutual labels:  chat
Libpurecoollink
Dyson Pure Cool link python library
Stars: ✭ 186 (-1.59%)
Mutual labels:  library
Discordchatexporter
Exports Discord chat logs to a file
Stars: ✭ 3,198 (+1592.06%)
Mutual labels:  chat
Libmoji
📚 Bitmoji's API made easy for everyone
Stars: ✭ 189 (+0%)
Mutual labels:  library
Cardslider Android
🃏 Cardslider is a material design UI controller that allows you to swipe through cards with pictures and accompanying descriptions.
Stars: ✭ 2,270 (+1101.06%)
Mutual labels:  library
Gateway
🚀构建分布式即时聊天、消息推送系统。 Building distributed instant messaging, push notification systems.
Stars: ✭ 188 (-0.53%)
Mutual labels:  chat
Cosmos
Hacktoberfest 2021 | World's largest Contributor driven code dataset | Algorithms that run our universe | Your personal library of every algorithm and data structure code that you will ever encounter |
Stars: ✭ 12,936 (+6744.44%)
Mutual labels:  library
Anko Core
基于Kotlin+Anko+协程+Retrofit2的demo,完全采用anko DSL布局,也可以作为Android快速开发框架,大量常用工具类,扩展函数
Stars: ✭ 189 (+0%)
Mutual labels:  library
Flutter hrlweibo
Flutter仿微博客户端, 包含首页、视频、发现、消息(仿微博聊界面)及个人中心模块
Stars: ✭ 2,336 (+1135.98%)
Mutual labels:  chat
Simple Web Server
A very simple, fast, multithreaded, platform independent HTTP and HTTPS server and client library implemented using C++11 and Boost.Asio. Created to be an easy way to make REST resources available from C++ applications.
Stars: ✭ 2,261 (+1096.3%)
Mutual labels:  library
Md max72xx
LED Matrix Library
Stars: ✭ 186 (-1.59%)
Mutual labels:  library
Autoserver
Create a full-featured REST/GraphQL API from a configuration file
Stars: ✭ 188 (-0.53%)
Mutual labels:  library
Navigationtabstrip
Navigation tab strip with smooth interaction.
Stars: ✭ 2,234 (+1082.01%)
Mutual labels:  library

Ruma – Your home in Matrix.

A set of Rust crates (libraries) for interacting with the Matrix chat network.

websitechat

Getting started

If you want to build a Matrix client or bot, have a look at matrix-rust-sdk. It builds on Ruma and includes handling of state storage, end-to-end encryption and many other useful things.

For homeservers, bridges and harder-to-categorize software that works with Matrix, you're at the right place. To get started, add ruma to your dependencies (as a git dependency if you want all of the latest improvements), enable all Cargo features that seem relevant and run cargo doc -p ruma --open. The ruma crate re-exports all relevant things, except for ruma-client, which you can use to make client-API calls to a Matrix homeserver¹.

If you use the crates through crates.io, make sure to choose versions of ruma and ruma-client that depend on the same / compatible versions of the other crates (checking one, for example ruma-common, is enough though). At the time of writing the latest versions are ruma 0.0.2 and ruma-client 0.5.0-alpha.1, which can be used together.

If you're using the crates through git, just use the same rev (or branch if you want to control the exact version only through Cargo.lock) for both.

This may seem a little convoluted, that's because it is. We're working on it.

¹ (better) support for the other APIs is planned

Status

As of 2021-01-19, we support the vast majority of endpoints in all of the various Matrix APIs except the identity service API (if you want to help with that, have a look at the crate/ruma-identity-service-api label).

Contributing

See CONTRIBUTING.md.

Minimum Rust version

Ruma currently requires Rust 1.43. In general, we will never require beta or nightly for crates.io releases of our crates, and we will try to avoid releasing crates that depend on features that were only just stabilized.

There are two exceptions to this:

  • ruma-signatures (and hence ruma with the federation-api feature) since it depends on ring, which is only guaranteed to work on the latest stable.
  • ruma-client depends on some I/O libraries (and also on ring, conditionally), so it is also only guaranteed to work on the latest stable.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].