602edaae79ef5437fd9313ce3957fb61fe981737
Matrix Gateway
Project that expose a simple API to make use of Matrix API. It acts as a Matrix client (like Element for example)
Known limitations:
- Supports only a limited subset of Matrix API
- Does not support spaces
Project written in Rust and TypeScript. Releases are published on Docker Hub.
Docker image options
docker run --rm -it docker.io/pierre42100/matrix_gateway --help
Setup dev environment
Dependencies
cd matrixgw_backend
mkdir -p storage/maspostgres storage/synapse storage/minio
docker compose up
To create default account, in another terminal, run the following command:
docker compose --profile create-accounts up -d
URLs:
- Element: http://localhost:8080/
- Synapse: http://localhost:8448/
- Matrix Authentication Service: http://localhost:8778/
- OpenID configuration: http://127.0.0.1:9001/dex/.well-known/openid-configuration
- Minio console: http://localhost:9002/
Auto-created Matrix accounts:
admin1:admin1user1:user1
Minio administration credentials: minioadmin : minioadmin
Backend
cd matrixgw_backend
cargo fmt && cargo clippy && cargo run --
Frontend
cd matrixgw_frontend
npm install
npm run dev
Languages
Rust
82.9%
HTML
12.3%
JavaScript
3.7%
Makefile
0.5%
Dockerfile
0.3%
Other
0.3%