chore(dev): /dev/migration UI showcase for app-migration surfaces - #2574
Closed
kushagrasarathe wants to merge 10 commits into
Closed
chore(dev): /dev/migration UI showcase for app-migration surfaces#2574kushagrasarathe wants to merge 10 commits into
kushagrasarathe wants to merge 10 commits into
Conversation
Preview page for every PWA->native migration component (download modal, 30-day block, guest CTA, open-in-app banner, app-store landing, setup prefill, review nudge, push opt-in) composed from real Bruddle primitives so the states are reviewable before wiring into the real flows.
modals now use ActionModal (pink icon circle + cta stack), block + landing mirror the ForceIOSPWAInstall two-section install screen (secondary-3 hero + peanut mascot + stars), guest CTA + setup prefill use AvatarWithBadge and the live pay/claim amount typography — instead of the earlier bespoke markup.
…, full guest pages - drop 'native app' wording everywhere (users don't know the term) - add component index (what each is + where it's used) - device-aware store CTA (platform toggle; user's store is primary/purple) - 01 download modal: shorter CTAs, loud countdown pill - 02 access-ending: PEANUTMAN_MOBILE mascot, clearer copy - 03 guest link pages: full-page claim/request/invite with real 'Continue with Peanut' - 04 banner: reuse home CarouselCTA - 05 landing: whistling mascot hero, 'Download' CTA + rating (dropped 'Sign up') - 06 setup-prefill screen removed (it's just existing signup with recovered context, not a new screen) - 07 review + 08 push: better copy, fix CTA overflow + secondary shadow
bg-primary-1 + CloudsCss + PeanutWhistling + big uppercase heading, store buttons row on web / stacked on phone, rating for trust. drops the phone-frame card + 'Sign up' CTA.
on desktop, store links are dead, so download CTAs (download prompt, access- ending screen, landing) show a 'Show QR to download' button that opens a QR modal (mirrors InstallPWA DesktopInstructions). adds Desktop to the platform toggle + a standalone QR example (08).
my hand-built hero was wrong (centered avatar+amount, custom rows). rebuild with the actual page anatomy: centered header -> PeanutActionDetailsCard hero (avatar + 'alice sent you' + amount) -> Continue with Peanut -> Divider -> ActionListCard method rows. matches the live /claim + /request UI.
1. section 05 now renders the actual LandingPage/hero <Hero> (same as peanut.me), only the single CTA is device-based (App Store / Google Play / Download). 2. guest link page CTAs (Continue with Peanut + method rows) open the scan-to- download QR modal when platform is desktop.
… QR toggle general: - one primary CTA per device on mobile (visitor's store only, no dual buttons) - desktop shows a scan-to-download QR with an App Store/Google Play toggle (can't detect the phone OS from a browser) — one QR at a time component: - 01 download prompt: single variant, deadline in copy, QR inline on desktop (no 'Show QR' click); mobile shows the single store CTA - 05 landing: CTA 'Download now' for all; opens the QR modal on desktop - 02 access-ending + 08 modal now use the shared dual-store DownloadQR
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
Contributor
Code-analysis diffPainscore total: 6306.66 → 6315.29 (+8.63) 🆕 New findings (5)
📈 Painscore deltas (top movers)
|
Contributor
🧪 UI test report — ✅ all greenSuites
📊 Coverage (unit)
⏱ 10 slowest test cases
|
content-driven height (no fixed h-[660px] cramping the desktop QR) + taller padded hero + size-capped mascot with margin so its feet/shadow never clip.
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.
Summary
Adds a dev-only preview page at
/dev/migrationthat showcases every UI surface for the PWA → app-store migration, composed from the real app components (not lookalikes) so the states read like production.Surfaces covered:
ForceIOSPWAInstall).PeanutActionDetailsCard+ActionListCard+ the real "Continue with Peanut" button.CarouselCTA.<Hero>component, CTA swapped to "Download now".ActionModalpre-prompts.Device-aware throughout: one primary CTA per device (mobile → store button; desktop → QR).
Risk
None to production. Dev-only route —
/devisnotFound()on prod (dev/layout.tsx), the whole page is behind that gate. No production code touched; only a new file undersrc/app/(mobile-ui)/dev/.QA
Toggle iOS / Android / Desktop (top-right) to see the device-aware CTAs; open each modal; on Desktop the download CTAs show the dual-store QR.
Screenshots
Dev-only preview route — best viewed live at
/dev/migration(steps above). Every surface is rendered from the real components; toggling the platform pill drives the CTA variants.Design notes
peanut.me/appredirecting by device) would remove the toggle — noted in a code comment as the lighter alternative, pending a product call.🤖 Generated with Claude Code