Fork of Conduit Rust matrix homeserver
Find a file
Timo Kösters 2cf6fd57b7
improvement: don't send pdus to appservices if it isn't interested
TODO: we need to send pdus if a user of the appservice is in the room
but not the appservice user itself
2020-12-23 19:41:54 +01:00
.gitea Change license to Apache-2.0 2020-10-18 13:47:52 +02:00
docker Fix order of docker command arguments and change repository link to... 2020-10-18 23:06:08 +02:00
src improvement: don't send pdus to appservices if it isn't interested 2020-12-23 19:41:54 +01:00
tests Change CA to PKI per naming in Complement 2020-11-09 17:32:04 +01:00
.dockerignore Update dockerignore 2020-09-17 20:14:07 +02:00
.gitignore fix: only allow valid usernames in /register 2020-05-13 12:25:15 +02:00
Cargo.lock improvement: don't send pdus to appservices if it isn't interested 2020-12-23 19:41:54 +01:00
Cargo.toml improvement: don't send pdus to appservices if it isn't interested 2020-12-23 19:41:54 +01:00
CROSS_COMPILE.md docs: cross compile 2020-10-18 09:04:11 +02:00
DEPLOY_FROM_SOURCE.md feat: federation disabled by default 2020-10-07 11:51:56 +02:00
docker-compose.yml feat: federation disabled by default 2020-10-07 11:51:56 +02:00
Dockerfile Fix order of docker command arguments and change repository link to... 2020-10-18 23:06:08 +02:00
LICENSE Change license to Apache-2.0 2020-10-18 13:47:52 +02:00
README.md Fix order of docker command arguments and change repository link to... 2020-10-18 23:06:08 +02:00
Rocket-example.toml feat: federation disabled by default 2020-10-07 11:51:56 +02:00
rust-toolchain Update dependencies, remove dbgs 2020-10-16 14:04:29 +02:00
rustfmt.toml Use sled::Tree::prefix_search for deviceids 2020-03-30 13:46:18 +02:00

Conduit

A Matrix homeserver written in Rust

Liberapay Matrix

What is the goal?

A fast Matrix homeserver that's easy to set up and just works. You can install it on a mini-computer like the Raspberry Pi to host Matrix for your family, friends or company.

Can I try it out?

Yes! Just open a Matrix client (https://app.element.io or Element Android for example) and register on the https://conduit.koesters.xyz homeserver.

How can I deploy my own?

From source

Clone the repo, build it with cargo build --release and call the binary (target/release/conduit) from somewhere like a systemd script. Read more

Using Docker

Pull and run the docker image with

docker pull matrixconduit/matrix-conduit:latest
docker run -d -p 8448:8000 -v db:/srv/conduit/.local/share/conduit matrixconduit/matrix-conduit:latest

Or build and run it with docker or docker-compose. Read more

What is it build on?

  • Ruma: Useful structures for endpoint requests and responses that can be (de)serialized
  • Sled: A simple (key, value) database with good performance
  • Rocket: A flexible web framework

What are the biggest things still missing?

  • Appservices (Bridges and Bots)
  • Most federation features (invites, e2ee)
  • Push notifications on mobile
  • Notification settings
  • Lots of testing

Also check out the milestones.

How can I contribute?

  1. Look for an issue you would like to work on and make sure it's not assigned to other users
  2. Ask someone to assign the issue to you (comment on the issue or chat in #conduit:matrix.org)
  3. Fork the repo and work on the issue. #conduit:matrix.org is happy to help :)
  4. Submit a PR

Donate

Liberapay: https://liberapay.com/timokoesters/
Bitcoin: bc1qnnykf986tw49ur7wx9rpw2tevpsztvar5x8w4n