This is an attempt to implement an OAuth 2.0 and OpenID Connect authentication server for Matrix, following MSC2964. Don't expect too much here for now, this is very much a work in progress.
See the Documentation for information on installation and use.
- Install Rust and Cargo
- Install Node.js and npm
- Install Open Policy Agent
- Clone this repository
- Generate the frontend:
cd crates/static-files npm ci npm run build cd ../..
- Build the Open Policy Agent policies
cd crates/policy/policies make # OR, if you don't have `opa` installed and want to build through the OPA docker image make DOCKER=1 cd ../../..
- Generate the sample config via
cargo run -- config generate > config.yaml
- Run the database migrations via
cargo run -- database migrate
- Run the server via
cargo run -- server -c config.yaml
- Go to http://localhost:8080/