README (2182B)
1 Dendrite is a second-generation Matrix homeserver written in Go. It intends to 2 provide an efficient, reliable and scalable alternative to Synapse: 3 4 - Efficient: A small memory footprint with better baseline performance than an 5 out-of-the-box Synapse. 6 - Reliable: Implements the Matrix specification as written, using the same 7 test suite as Synapse as well as a brand new Go test suite. 8 - Scalable: can run on multiple machines and eventually scale to massive 9 homeserver deployments. 10 11 Dendrite is beta software, which means: 12 13 - Dendrite is ready for early adopters. We recommend running Dendrite with a 14 PostgreSQL database. 15 - Dendrite has periodic releases. We intend to release new versions as we fix 16 bugs and land significant features. 17 - Dendrite supports database schema upgrades between releases. This means you 18 should never lose your messages when upgrading Dendrite. 19 20 This does not mean: 21 22 - Dendrite is bug-free. It has not yet been battle-tested in the real world 23 and so will be error prone initially. 24 - Dendrite is feature-complete. There may be client or federation APIs that 25 are not implemented. 26 - Dendrite is ready for massive homeserver deployments. There is no 27 high-availability/clustering support. 28 29 # Configuration 30 31 A database must be created with UTF-8 encoding configured, or you will likely 32 run into problems with your Dendrite deployment. 33 34 ``` 35 sudo -u postgres createuser --pwprompt dendrite 36 sudo -u postgres createdb --owner=dendrite --encoding=UTF-8 dendrite 37 ``` 38 39 All Matrix homeservers require a signing private key, which will be used to 40 authenticate federation requests and events. 41 42 _Important Warning_ You must treat this key as if it is highly sensitive and 43 private, so never share it with anyone. No one should ever ask you for this key 44 for any reason, even to debug a problematic Dendrite server. 45 46 Make sure take a safe backup of this key. You will likely need it if you want 47 to reinstall Dendrite, or any other Matrix homeserver, on the same domain name 48 in the future. If you lose this key, you may have trouble joining federated 49 rooms. 50 51 ``` 52 sudo -u dendrite generate-keys -private-key /etc/dendrite/matrix_key.pem 53 ```