Skip to content

feat(web): cut the register page down to what moves a sign-up - #1323

Merged
riderx merged 2 commits into
mainfrom
feat/register-hierarchy
Oct 28, 2026
Merged

riderx merged 2 commits into
mainfrom
feat/register-hierarchy

Conversation

@riderx

@riderx riderx commented Oct 28, 2026 •

Copy link
Copy Markdown
Member

Before / after

Before (live capgo.app/register) After
Desktop
Mobile

The before shots show "Verifying…" because production renders Turnstile. Locally there's no site key, so the after shots show no widget. In production it's now interaction-only, so most visitors won't see it either.

Why

The form card had nine stacked blocks before the button: title, sign-in line, two pills, a price line, five password rules, the captcha, then terms, a "Need help?" divider and a full-width support button. The side column was a rotating carousel. Nothing told the eye where to go first.

Scan order now

Form card: headline (30px bold) → one value line (15px) → Email → Password → Sign up → small print (12px: starting price, terms) → footer row (Sign in, Contact support).

  • Trial and no-card pills → one value line. Direct-offer visitors still get the guarantee version.
  • Password rules hidden until the password is wrong: they appear when the visitor leaves the field with missing rules, types 6+ characters that still miss a rule, or submits. They then tick live and hide when every rule is met. The weak-password toast is gone; only the 72-byte limit, which the list doesn't cover, still toasts.
  • Turnstile data-appearance="interaction-only": Cloudflare analytics show about 99% of challenges solve without interaction, so the widget is usually invisible. The error and retry handling from fix(web): recover lost sign-ups on the register page #1318 is unchanged.
  • Starting price (live currency, from fix(web): show the register page starting price from live Stripe pricing #1320) moves into the small print under the button.
  • Sign in and Contact support share one footer row, replacing the "Need help?" divider and the big support button.

Side column (this also supersedes #1322): headline (30px) → three numbered steps (16px titles, 14px one-line bodies, plus the npx @capgo/cli@latest init command) → six customer app icons with "Trusted by 9,400+ teams shipping to 90M+ devices" → one review (Sergiu, drivolino: "days to minutes"). The carousel, rating summary, eight-card app grid and second review are gone.

Checks

  • bun test src/scripts/register.test.ts: 8 pass, including 2 new tests for when the password rules show.
  • astro check: 0 errors.
  • In the browser: rules hidden on load and while typing "abc", shown after leaving the field, hidden once "Abcdef1!" meets every rule, shown at 6+ characters with a missing rule and on a weak submit, with no toast. The price renders as €7/mo for this location.
  • Checked at 1440px and 390px.

Screenshots live on the pr-assets/register-hierarchy branch, which only holds the four PNGs. Delete it after merge.

🤖 Generated with Claude Code


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

View guided diff Turn on auto-fix

riderx and others added 2 commits October 28, 2026 13:33
The column next to the form was a rotating carousel showing one long
quote at a time, with eight dots, plus three generic taglines. It
answered neither "how much work is this" nor "who else uses it".

- "From sign-up to your first live update": three numbered steps,
  including the `npx @capgo/cli@latest init` command, so the effort
  after sign-up is visible before committing.
- Trust line (9,400+ teams, 90M+ devices, GitHub stars) with eight
  customer apps and their store install counts.
- Two named reviews (drivolino, Tellent) shown together, static, with
  the rating summary. The carousel script and styles are removed.
- Both columns align to the top, so the steps line up with the form.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Every element now earns its place, in scan order: headline, one value
line, the two fields, the button, small print, then the secondary links.

Form card
- The trial and no-card pills become one 15px value line.
- The password rules stay hidden until the password is wrong: leaving the
  field with missing rules, typing six or more characters that still
  miss one, or submitting. They tick live once shown, and the weak
  password toast is gone.
- Turnstile uses interaction-only appearance. Cloudflare shows about 99%
  of challenges pass without interaction, so most visitors never see it.
- The starting price moves into the small print under the button, next
  to the terms.
- "Already have an account? Sign in" and "Contact support" share one
  footer row, replacing the "Need help?" divider and the full-width
  support button.

Side column
- The headline and the three steps stay, with shorter descriptions.
- Six customer app icons with one trust line replace the eight-card grid.
- One review replaces the rating summary and two review cards.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Next included review available in 52 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: e2b421c2-827a-4e75-8774-0aa4a0cccce5
Commits

Reviewing files that changed from the base of the PR and between 358ba6c and 19d2995.

Files selected for processing: 6
  • apps/shared/copy/messageContexts.ts
  • apps/shared/copy/messages.ts
  • apps/shared/copy/translationContextByText.ts
  • apps/web/src/pages/register.astro
  • apps/web/src/scripts/register.test.ts
  • apps/web/src/scripts/register.ts
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-28T13:41:52.433988Z 19d2995 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@sonarqubecloud

Copy link
Copy Markdown

@riderx
riderx merged commit 77e69a7 into main Oct 28, 2026
13 checks passed
riderx added a commit to Cap-go/capgo.app that referenced this pull request Oct 28, 2026
…raction (#3970)

Every console form with a captcha (login, register, forgot password,
invitations, account settings and more) rendered the full "Verify you are
human" box. Cloudflare's Turnstile analytics show about 99% of
challenges solve without any interaction, so the box was clutter for
almost everyone.

VueTurnstile now defaults to appearance "interaction-only". The widget
still runs and issues a token in the background, and it appears only
when Cloudflare asks for a click. capgo.app/register made the same
change in Cap-go/website#1323.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant