No description
Find a file
2021-09-06 16:08:49 +02:00
config Rename repository 2021-09-01 14:43:55 +02:00
keys Add function to sign event 2021-08-05 13:30:46 +02:00
lib Validate 'from' and 'to' tokens in client /messages endpoint 2021-09-06 16:08:49 +02:00
priv/repo Fix event unsigned having default empty map in db 2021-09-05 23:09:29 +02:00
test Add missing fields to events 2021-09-05 16:39:52 +02:00
.dialyzer_ignore.exs Add dialyzer dependency 2021-08-18 23:22:04 +02:00
.formatter.exs Init git repo 2021-06-22 14:09:25 +02:00
.gitignore Rename repository 2021-09-01 14:43:55 +02:00
.tool-versions Add function to sign event 2021-08-05 13:30:46 +02:00
element.sh Rename repository 2021-09-01 14:43:55 +02:00
LICENSE Create LICENSE 2021-07-23 22:18:25 +00:00
mix.exs Rename repository 2021-09-01 14:43:55 +02:00
mix.lock Add dialyzer dependency 2021-08-18 23:22:04 +02:00
psql.sh Rename repository 2021-09-01 14:43:55 +02:00
README.md Update README.md 2021-09-01 12:21:02 +00:00

Architex

A Matrix homeserver written in Elixir. Currently, this project is in a very early stage.

Noteworthy contributions

  • lib/architex/state_resolution.ex: Implementation of version 2 of the Matrix state resolution algorithm.
  • lib/architex/state_resolution/authorization.ex: Implementation of authorization rules for the state resolution algorithm.
  • lib/architex/room_server.ex: A GenServer that holds and manages the state of a room.

Dependencies

  • Elixir 1.12.2 compiled for OTP 24
  • Erlang 24.0.3
  • PostgreSQL
  • Libsodium

Generate the server's ed25519 keys by executing ssh-keygen -t ed25519 -f keys/id_ed25519 -N ""

Progress

Here, implemented and some unimplemented features are listed.

TODO: list implemented endpoints

Implemented

Major unimplemented features