Dendrite is a second-generation Matrix homeserver written in Go!
Go to file
Andrew Morgan 08274bab5a Application Service Registration (#390)
* Add ability for App Services to register users

AS Tokens are pulled from their respective configs, which are then
checked against when an AS tries to register using
m.login.application_service. If the token exists and the new username is
within their specified namespace, then the user is created as a
password-less user.

Signed-off-by: Andrew Morgan (https://amorgan.xyz) <andrew@amorgan.xyz>

* Validate loaded Application Services

* Ensure no two app services have the same token or ID
* Check namespaces are valid regex
* Ensure users can't register inside an exclusive app service namespace
* Ensure exclusive app service namespaces are exclusive with each other
* Precompile application service namespace regexes so we don't need to
do so every time a user is registered

Signed-off-by: Andrew Morgan (https://amorgan.xyz) <andrew@amorgan.xyz>
2018-02-08 11:02:48 +00:00
docker Set up a development environment with docker (#387) 2018-01-02 18:26:37 +00:00
docs Add some basic docs about opentracing (#366) 2017-12-05 14:55:27 +00:00
hooks run commit hook on what we're committing (#356) 2017-11-27 12:19:04 +00:00
jenkins use matching sytest branch, or develop 2017-09-20 12:08:24 +01:00
scripts Make travis builds a bit faster (#382) 2017-12-19 14:09:15 +00:00
src/github.com/matrix-org/dendrite Application Service Registration (#390) 2018-02-08 11:02:48 +00:00
vendor Load Application Service Configuration Files (#377) 2017-12-19 17:00:44 +00:00
.editorconfig Add .editorconfig (#179) 2017-08-05 02:25:40 +01:00
.gitignore Set up a development environment with docker (#387) 2018-01-02 18:26:37 +00:00
.travis.yml Make travis builds a bit faster (#382) 2017-12-19 14:09:15 +00:00
CODE_STYLE.md Code Style: Prefer WithFields over Infof (#349) 2017-11-22 09:35:25 +00:00
CONTRIBUTING.md Mention how to run the linters in documentation (#310) 2017-10-17 17:11:00 +01:00
dendrite-config.yaml Load Application Service Configuration Files (#377) 2017-12-19 17:00:44 +00:00
DESIGN.md Clean up README a bit (#289) 2017-10-10 09:33:41 +01:00
INSTALL.md Add database.naffka to example config (#350) 2017-11-22 15:46:49 +00:00
LICENSE Add Apache Version 2.0 license and headers to all golang files 2017-04-21 00:40:52 +02:00
linter-fast.json Update gometalinter, and disable gas (#371) 2017-12-08 19:13:17 +00:00
linter.json Update gometalinter, and disable gas (#371) 2017-12-08 19:13:17 +00:00
README.md Clean up README a bit (#289) 2017-10-10 09:33:41 +01:00
WIRING.md Add misspell and gofmt simplify to the pre-commit hooks (#138) 2017-06-12 18:30:47 +01:00

Dendrite Build Status

Dendrite will be a matrix homeserver written in go.

It's still very much a work in progress, but installation instructions can be found in INSTALL.md

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!

We aim to try and make it as easy as possible to jump in.

Discussion

For questions about Dendrite we have a dedicated room on Matrix #dendrite:matrix.org.

Progress

There's plenty still to do to make Dendrite usable! We're tracking progress in a spreadsheet.