feat(auth): add a signupEmail action that opens the registration form directly - #6604
Merged
Merged
Conversation
… directly `?action=signup` maps to `AuthDisplay.Default`, which is right for a link that means "sign up": social buttons plus an email field. It is wrong for one that means "sign up WITH EMAIL", which is what the marketing homepage's hero now needs — that hero has its own provider buttons, so a visitor who presses "Continue with email" there is asked to choose all over again, and only after handing over an email a second time reaches the account-details form. `signupEmail` maps to `AuthDisplay.Registration`, so the link lands where the app's own "Continue with email" button lands. Two lines and a comment; the `Record<OnboardingActions, AuthDisplay>` type makes the enum member and its mapping a pair, so this cannot be half-added. Nothing existing changes behaviour — `signup` still means what it meant. Consumed by dailydotdev/recruiter-landing, the homepage hero signup experiment. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
idoshamun
approved these changes
Sep 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds one member to
OnboardingActionsand its mapping:Two lines in
packages/shared/src/components/auth/common.tsx. TheRecord<OnboardingActions, AuthDisplay>type makes the enum member and its mapping a pair, so it cannot be half-added. Nothing existing changes behaviour —signupstill means what it meant.Why
daily.dev/is getting a signup in the hero (recruiter-landing#519), behind a flag. It carries its own Google and GitHub buttons plus a "Continue with email", and that last one has nowhere good to send people.In the app, "Continue with email" swaps the screen in place —
AuthDisplay.Default→AuthDisplay.Registration— so no URL reproduces it. The closest existing action,?action=signup, maps toAuthDisplay.Default: the provider buttons all over again, plus an email field, shown to someone who has just chosen email. It works, but it asks the same question twice.With this action the marketing page can link straight to the account-details form, and its button behaves like the app's.
While you're in here — an unrelated bug this does not fix
/onboardingrenders a completely blank page for any action it does not recognise. Verified on production just now:/onboarding?action=signup/onboarding?action=signupEmail(before this PR)/onboarding?action=bananaThe cause looks like
packages/webapp/pages/onboarding.tsx: the funnel effect reads the rawrouter.query.actionand returns early on any truthy value, sosetFunnelReady(true)never runs — whileuseOnboardingAuthonly setsisAuthenticatingfor a recognised action, so the auth branch does not render either. Neither path takes it, and the component falls through toreturn null.That bites a stale link, a typo, or a capitalised
?action=Signupin a campaign URL. Left alone here because it is a change to the funnel's own control flow and deserves its own review — happy to send that separately if you want it.Test plan
?action=signupEmailopens the account-details form (email, name, password, username, experience, captcha).?action=signup,?action=login,?action=verify,?action=recover,?action=changePasswordunchanged.packages/sharedtypechecks.🤖 Generated with Claude Code
Preview domain
https://signup-email-deep-link-dailydotd.preview.app.daily.dev