Dendrite est un Homeserver Matrix open-source développé de 2019 à 2023 dans le cadre de la Matrix.org Foundation. La fondation Matrix.org n'est pas en mesure de maintenir la maintenance des ressources de Dendrite et il continue d'être développé par élément en outre que vous avez le choix d'autres Matrix Homeservers
Consultez l'avenir de la synapse et de Dendrite Blog pour plus d'informations.

Dendrite est une matrice de deuxième génération Homeserver écrite en Go. Il a l'intention de fournir une alternative efficace , fiable et évolutive à la synapse:
Dendrite est un logiciel bêta , ce qui signifie:
Cela ne signifie pas:
Actuellement, nous nous attendons à ce que Dendrite fonctionne bien pour les déploiements HomeServer de petits (10S / 100S) ainsi que les nœuds de matrice P2P in-browser ou sur les appareils mobiles.
Si vous avez d'autres questions, veuillez jeter un œil à notre FAQ ou rejoignez-nous:
Consultez la planification de votre page d'installation pour plus d'informations sur les exigences.
Pour construire Dendrite, vous aurez besoin de 1,21 ou plus tard.
Pour un déploiement fédérant de Dendrite, vous aurez également besoin:
Sont également recommandés:
Le testeur de la Fédération peut être utilisé pour vérifier votre déploiement.
Si vous souhaitez créer une instance Dendrite entièrement fédérante, consultez la documentation d'installation. Pour courir dans Docker, voir build / docker.
Les instructions suivantes sont suffisantes pour démarrer Dendrite comme un déploiement de test non fédérateur à l'aide de certificats auto-signés et de bases de données SQLite:
$ git clone https://github.com/matrix-org/dendrite
$ cd dendrite
$ go build -o bin/ ./cmd/...
# Generate a Matrix signing key for federation (required)
$ ./bin/generate-keys --private-key matrix_key.pem
# Generate a self-signed certificate (optional, but a valid TLS certificate is normally
# needed for Matrix federation/clients to work properly!)
$ ./bin/generate-keys --tls-cert server.crt --tls-key server.key
# Copy and modify the config file - you'll need to set a server name and paths to the keys
# at the very least, along with setting up the database connection strings.
$ cp dendrite-sample.yaml dendrite.yaml
# Build and run the server:
$ ./bin/dendrite --tls-cert server.crt --tls-key server.key --config dendrite.yaml
# Create an user account (add -admin for an admin user).
# Specify the localpart only, e.g. 'alice' for '@alice:domain.com'
$ ./bin/create-account --config dendrite.yaml --username alice Pointez ensuite votre client de matrice préférée sur http://localhost:8008 ou https://localhost:8448 .
Nous utilisons un script appelé "sommes-nous encore Synapse" qui vérifie les taux de conformité Sytest. Sytest est une plate-forme de test HomeServer à la boîte noire avec environ 900 tests. Le script détermine le nombre de ces tests qui transmettent Dendrite et il se met à jour avec CI. En janvier 2023, nous avons 100% de parité server-serveur avec Synapse, et la parité client-serveur est à 93%, bien que vérifiez CI pour les derniers chiffres. En pratique, cela signifie que vous pouvez communiquer localement et via la fédération avec des serveurs Synapse tels que Matrix.org raisonnablement bien, bien qu'il y ait encore des fonctionnalités manquantes (comme SSO et API ID tiers).
Nous privilégions les fonctionnalités qui bénéficieront d'abord à desservers les HomeServers (par exemple, par exemple, les reçus, E2E) plutôt que des fonctionnalités qui peuvent être intéressées (OpenID, invités, API admin, en tant qu'API). Cela signifie que Dendrite soutient entre autres:
Nous serions reconnaissants de toute aide sur les problèmes marqués comme nous sommes encore la synapse. Ces problèmes ont tous des systèmes connexes qui doivent passer pour que le problème soit fermé. Une fois que vous avez écrit votre code, vous pouvez rapidement exécuter Sytest pour vous assurer que les noms de test passent maintenant.
Si vous êtes nouveau dans le projet, consultez notre page contributive pour vous mettre au courant, puis recherchez de bons premiers problèmes. Si vous connaissez le projet, recherchez des problèmes de recherche d'aide.