#5205Requested

Improved SpacetimeAuth Web UX

Requested by @doodlechaos
Energy Committed55,421TeVfrom 3 boosters

Improved SpacetimeAuth Web UX

Summary

I’d like to request improvements to the SpacetimeAuth web login experience, especially for apps using third-party providers like Google and Discord.

Issues

1. Extra authorization step

The current identity-provider flow appears to require these steps:

  1. Click login button on app
  2. Click “Login with Google/Discord/etc.”
  3. Click authorize with the provider
  4. Click “Authorize Application”

That fourth step is confusing for new users because they feel they already authorized the login provider. Ideally, third-party auth would only require selecting the provider and approving the provider login.

If the extra step is required for technical reasons, the page should more clearly explain what is being authorized and why.

2. Login screen polish

Play testers said the SpacetimeAuth login page looked somewhat “sketchy,” especially when only Google and Discord providers are available and email login is not enabled.

A few CSS/layout improvements would help it feel more trustworthy and consistent with the polish of the main SpacetimeDB website.

3. Embedded login option

It would be super helpful to support embedding the provider selection directly inside an app, similar to Firebase Auth, instead of requiring a redirect away from the page.

4. Role management

Role management would still be useful, but it is lower priority for me because I already implemented a custom solution.

Impact

These changes would reduce login friction and improve trust for users trying apps built on SpacetimeDB, and prevent losing new players in the onboarding process.

  1. website-features added the feature-request label Jun 3, 2026

Boost this Request

Reopen this request?

The request will return to its prior live status.

Mark as Duplicate

Pick the request that Improved SpacetimeAuth Web UX is a duplicate of. Energy rolls up into that request and GitHub closes the linked issue as a duplicate with a timeline reference to the canonical.

Unmark Duplicate

Restore as an independent request. The linked GitHub issue will be reopened and its duplicate-of relationship cleared. The original timeline entries stay as history; the note below is posted as a follow-up comment.