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 11 months ago
.gitignore f22d7115fe add Cargo.lock 11 months ago
LICENSE e8248e3435 Removing unused parts 11 months ago
README.md 085a598fb9 Specifiyng the used framework 11 months ago
config.yaml.example 2dd6082948 up 11 months 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.