Add invitations by e-mail when creating a group

User story: it’s an old one, I’ll copy from the Github issue

Problem

When creating a group, it’s reasonable to assume that the person creating the group would like to invite other people to join. The way to do it now is quite clunky and hard to discover: go to member’s page, click the invite button to copy the link, send to the people one wishes to invite and wait for them to create and account and apply to the group. Then accept application.

Possible solution

Invitations by e-mail were possible before at the member’s page but removed from the frontend (see #2349 ) in order to keep consistency with the application process, especially in established groups. However, when one is just starting a group, the application process would not make much sense, since we’re dealing with one person (the group creator) accepting applications in an environment of high trust. Thus the invitation by e-mail feature could still be used at the moment of group creation.

Complexity: not simple

Outcomes (or what needs to be done to move forward): more discussion on what the threshold of people in the group should be for inviting by e-mail, or maybe another solution? Also some design…

Yes, I think invite flow makes sense for lots of cases. Can use it to have more closed groups that you invite people specifically to.

How I’ve been used to it before in other platforms is users (well, more like special users, like admins), can create invite links, sometimes with various parameters (expiry, how many people can be invited using the link, etc…).

For our case it might be:

  • editors can create invite links
  • they are unlimited (for simplicity)
  • if somebody uses it but the user that created it is no longer an editor, it should act as if it’s an invalid invite url

Here’s the discourse implementation of invite links (it combines “invite specific email address” with general invite links…):

Here’s the mastodon UI for invite links (it won’t send emails, as they are not specific to particular email addresses):

I wonder which approach is best here?

(I also have to look up how we did it before… I can’t actually remember)