A web application to make my Matrix homeserver account registration invite-only where (optionally) people can invite a limited number of others only

Farooq Karimi Zadeh f22d7115fe add Cargo.lock 1 year ago
.gitignore f22d7115fe add Cargo.lock 1 year ago
LICENSE e8248e3435 Removing unused parts 1 year ago
README.md 085a598fb9 Specifiyng the used framework 1 year ago
config.yaml.example 2dd6082948 up 1 year ago

README.md

MatInviteReg

A web application to make my Matrix homeserver account registration invite-only where (optionally) people can invite a limited number of others only

Written using actix-web.

Web app structure:

  • /: Shows a form with action = /register which a user can register for an account with an invitation code + a link to /login. If user already logged in instead shows a form in which they can create an invite code if they have any remaining. Admin(s) can invite an unlimited number of people. Optional argument: invite_code. If user has logged in and invite is set to true(case insensitive), A new invitation code is generated and returned back to user in the panel.

  • /login: A login form which redirects user to / if username/password was correct. Optional arguments: username and password.

  • /register: Arguments are invite_code, username, email and password. Registers a new user if invite_code is valid and adds username and username of the user who has invited this user to LMDB database.

DB structure

  • invites: key = the one who invited & value = the one who accepted invite.