73d2f59e30
* Add libp2p-go * Some tweaks, tidying up (cherry picked from commit 1a5bb121f8121c4f68a27abbf25a9a35a1b7c63e) * Move p2p dockerfile (cherry picked from commit 8d3bf44ea1bf37f950034e73bcdc315afdabe79a) * Remove containsBackwardsExtremity * Fix some linter errors, update some libp2p packages/calls, other tidying up * Add -port for dendrite-p2p-demo * Use instance name as key ID * Remove P2P demo docker stuff, no longer needed now that we have SQLite * Remove Dockerfile-p2p too * Remove p2p logic from dendrite-monolith-server * Inject publicRoomsDB in publicroomsapi Inject publicRoomsDB instead of switching on base.libP2P. See: https://github.com/matrix-org/dendrite/pull/956/files?file-filters%5B%5D=.go#r406276914 * Fix lint warning * Extract mDNSListener from base.go * Extract CreateFederationClient into demo * Create P2PDendrite from BaseDendrite Extract logic specific to P2PDendrite from base.go * Set base.go to upstream/master * Move pubsub to demo cmd * Move PostgreswithDHT to cmd * Remove unstable features * Add copyrights * Move libp2pvalidator into p2pdendrite * Rename dendrite-p2p-demo -> dendrite-demo-libp2p * Update copyrights * go mod tidy Co-authored-by: Neil Alexander <neilalexander@users.noreply.github.com> |
||
---|---|---|
.github | ||
appservice | ||
clientapi | ||
cmd | ||
common | ||
docker | ||
docs | ||
eduserver | ||
federationapi | ||
federationsender | ||
hooks | ||
mediaapi | ||
publicroomsapi | ||
roomserver | ||
scripts | ||
syncapi | ||
.editorconfig | ||
.gitignore | ||
.golangci.yml | ||
are-we-synapse-yet.list | ||
are-we-synapse-yet.py | ||
build.sh | ||
CODE_STYLE.md | ||
CONTRIBUTING.md | ||
dendrite-config.yaml | ||
DESIGN.md | ||
go.mod | ||
go.sum | ||
INSTALL.md | ||
LICENSE | ||
p2p.md | ||
README.md | ||
show-expected-fail-tests.sh | ||
sytest-blacklist | ||
sytest-whitelist | ||
WIRING.md |
Dendrite
Dendrite will be a second-generation Matrix homeserver written in Go.
It's still very much a work in progress, but installation instructions can be found in INSTALL.md. It is not recommended to use Dendrite as a production homeserver at this time.
An overview of the design can be found in DESIGN.md.
Contributing
Everyone is welcome to help out and contribute! See CONTRIBUTING.md to get started!
Please note that, as of February 2020, Dendrite now only targets Go 1.13 or later. Please ensure that you are using at least Go 1.13 when developing for Dendrite.
Discussion
For questions about Dendrite we have a dedicated room on Matrix #dendrite:matrix.org. Development discussion should happen in #dendrite-dev:matrix.org.
Progress
There's plenty still to do to make Dendrite usable! We're tracking progress in a project board.