Skip to content

New team setup UI - #6666

Merged
RobertJoonas merged 15 commits into
masterfrom
team-setup-form
Sep 16, 2026
Merged

RobertJoonas merged 15 commits into
masterfrom
team-setup-form

Conversation

@RobertJoonas

@RobertJoonas RobertJoonas commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Changes

This PR builds a new UI for the team setup page that is completely independent from TeamManagement code (which continues to work exactly the same way in team settings). The objective is to make the initial team setup UI cleaner in order to add team creation as an optional onboarding step.

The new UI is a simple form, where:

  • name update happens only after hitting "Create team" (no db write on defocus anymore)
  • the user can add multiple "email + role" rows before hitting submit
  • the number of rows is limited by team_member_limit. Hitting the plus icon to add rows while at limit will not add any more rows and will display a "not-allowed" cursor
  • invitations are sent only after hitting "Create team" (just like before, but there's no confusing extra "Invite" step anymore that might make it feel like the invitation was already sent)
  • a validation error on any input field will flash an error message without resetting the form state itself (e.g. some email is invalid or the team name is reserved/prohibited)
  • Any rows with an empty email are ignored

Note: The handrolled member-rows.js hook is quite a lot of code, but as a follow-up, I'm planning to introduce a Prima.Listbox component and use it here. So member-rows.js should eventually get rid of the hand-crafted keyboard navigation, focusing and blurring the dropdown, etc. We'll also be able to use Listbox in the TeamManagement LiveView to make the UX feel more snappy in high-latency scenarios.

Tests

  • Automated tests have been added

Changelog

  • This PR does not make a user-facing change

Documentation

  • Docs have been updated

Dark mode

  • The UI has been tested both in dark and light mode

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Preview environment👷🏼‍♀️🏗️
PR-6666

@RobertJoonas
RobertJoonas requested review from a team, apata and ukutaht September 9, 2026 22:40
Comment thread assets/js/liveview/member-rows.js
Comment thread assets/js/liveview/member-rows.js Outdated
Comment thread assets/js/liveview/member-rows.js
Comment thread lib/plausible/teams/team.ex Outdated
Comment thread lib/plausible_web/live/team_setup.ex Outdated
@RobertJoonas
RobertJoonas added this pull request to the merge queue Sep 16, 2026
Merged via the queue into master with commit 4b481b0 Sep 16, 2026
23 checks passed
@RobertJoonas
RobertJoonas deleted the team-setup-form branch September 16, 2026 08:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants