feat(onboarding): redesign signup + onboarding to the Blacksky Figma - #164
Open
rishibalakrishnan wants to merge 34 commits into
Open
feat(onboarding): redesign signup + onboarding to the Blacksky Figma#164rishibalakrishnan wants to merge 34 commits into
rishibalakrishnan wants to merge 34 commits into
Conversation
On native, when a device attestation token is available, build the attest gate URL (/gate/signup/attempt-attest) and load it optimistically, falling back to the standard captcha URL if the attest endpoint fails to load (e.g. a PDS that has not shipped the route yet). Web and tokenless native signups go straight to the captcha as before, so account creation never breaks on a PDS that lacks the attestation route.
Bundle the Baste B (Regular) heading font and register it alongside the already-bundled Azeret Mono across the web/iOS and Android font lists. Add font_mono and font_heading atoms plus an applyFonts escape hatch so an explicit brand family survives the theme-font override on both platforms.
Replace the raw react-native Text stopgap with ALF Text + a.font_mono, drop the double uppercasing (keep textTransform, remove the JS toUpperCase), and tidy spacing/color intent. Move the Platform.Version shim into the shared jest setup and cover the null-render case.
…m props, and gated AppBar help - InputGroup label/supporting/error text now use theme tokens (t.atoms.text, text_contrast_medium, palette.negative_500) so they render in light theme; split input-on-card color into INPUT_TEXT_COLOR - forwardRef to the underlying TextInput and pass through autoComplete, textContentType, onSubmitEditing, returnKeyType, blurOnSubmit, autoFocus, onFocus/onBlur, maxLength, autoCorrect, editable + onPress (non-text fields) - error/focus border colors and aria-invalid + accessibilityHint on invalid - stop force-uppercasing the typed value (opt-in via uppercaseValue) - AppBar renders help only when onHelp is set, with a spacer otherwise
Rebuild StepHandle on the shared onboarding chrome (AppBar, Eyebrow, InputGroup, SelectionRow, PrimaryButton) and replace the domain dropdown with a radio SelectionRow list. Preserves handle validation, availability checking and suggestions. Adds availableHandles to the dev-fallback brand config so the domain options appear locally.
Reorder the post-account onboarding step machine to profile → pin-feeds → belong → blacksky-only → assembly → finished and drop the interests step. Add pinFeedsStepResults state with a setPinFeedsStepResults action, route the four new educational/feed steps to minimal chrome-shell placeholders, and pin the user-selected feeds on finish (falling back to the brand default set when none are chosen).
The redesigned chrome steps own their own AppBar and inline action button, so the shared Layout no longer wraps them in the legacy back-button header and portal footer. Those outlets remain for the not-yet-restyled finished step, which still drives them via OnboardingHeaderSlot/OnboardingControls.
… steps Add real Figma copy and static ALF skeleton graphics to the three educational onboarding steps: flagged-post moderation stack (Belong), Blacksky-only skeleton post card (BlackskyOnly), and People's Assembly statement card with vote pills (Assembly). Graphics are decorative, theme-aware, and not wired to live data.
Replace the 3-substep ValuePropositionPager with a single chrome Welcome screen (AppBar, Eyebrow, brand welcome heading, Logomark, PrimaryButton) and retire the Layout legacy-chrome special-case now that no rendered step uses the header/footer portals.
…eate Profile Make the community picker the first signup step on every platform and restyle it to the redesigned "Choose your handle" screen (bare chrome: app bar, eyebrow, Baste-B heading, community rows with brand-colored icons, consent line, primary + outline actions). Move handle-domain selection out of "Create your profile", which is now a handle-only screen. Selecting a community sets serviceUrl, which drives describeServer and the resulting handle domain. Order is now COMMUNITY -> INFO -> HANDLE -> CAPTCHA; createAccount/verification unchanged.
…ebrows to 4-step scheme
…ndle Fold handle-domain selection into each community row: the selected community expands to show its handle domains as radio sub-rows; single-handle communities render as a plain radio row; others show a collapsed disclosure row that expands on select. Adds a disclosure (chevron) mode to SelectionRow.
…rted layout Replace InputGroup per-corner/position border drawing with a single fully-rounded filled input and a new FieldGroupCard wrapper that provides the outer bordered card. The position prop is replaced by a showDivider boolean that renders a thin inter-field divider inside the card. Update StepInfo and StepHandle to wrap their fields in FieldGroupCard with the Figma vertical rhythm.
|
Author
|
@github-actions ota |
Author
|
@github-actions ota |
|
Your requested OTA deployment was published to channel Note On-device apply works on TestFlight and development builds only. Production builds keep the anti-bricking safety net (
|
Author
|
@github-actions ota |
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
Redesigns the signup + onboarding flow to the Blacksky Figma, with a shared
onboarding-chromecomponent set.Screens
blacksky.apphandles)Notes
AppBar,Eyebrow,PrimaryButton,InputGroup+FieldGroupCard,SelectionRow.@font-face.main(Signup/state.tsdiff is limited to the community-first step order).Base
Stacked on #159 (device attestation) — base is
feat/gatekeeper-device-attestation. Retarget tomainonce #159 merges.Testing
typecheck+ unit tests green; flow verified via web render in light and dark.