A high-performance Matrix Home-Server written in Rust designed to have a plugable storage engine, scalable, and light on resources.
General discussion for development is at #maelstrom-server:matrix.org
This is a brand new project under daily active development. It is not currently in usable form yet.
You can review the Closed matrix-spec
Issues in the issue tracker for a list of completed features.
This project started due to a strong interest/support of Web 3.0 (decentralized web applications). Additionally, having a performant embeddable home server can enable a stronger usecase for decentralized IoT applications in addition to chat.
# install rust if needed
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# clone repo and cd
git clone https://github.com/maelstrom-rs/maelstrom.git && cd maelstrom
# copy .env-example and set with your specific settings
cp Settings-example.yml Settings.yml
# build & run
cargo run --release
openssl ecparam -genkey -name prime256v1 | openssl pkcs8 -topk8 -nocrypt -out ec_private.pem
Make sure you set AUTH_KEY_FILE to path/to/ec_private.pem
The following are some other Rust based Home Server projects worth looking at:
Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Maelstrom by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.