Skip to content

fix(ui): calm the plan cards, drop em dashes from billing copy - #40

Merged
EOEboh merged 2 commits into
mainfrom
fix/plan-card-polish
Aug 3, 2026
Merged

fix(ui): calm the plan cards, drop em dashes from billing copy#40
EOEboh merged 2 commits into
mainfrom
fix/plan-card-polish

Conversation

@EOEboh

@EOEboh EOEboh commented Aug 3, 2026

Copy link
Copy Markdown
Owner

Two presentation fixes on the billing pages.

Plan card shadows

The cards had a large coloured glow:

shadow-[0_0_50px_-18px_rgba(20,184,166,0.55)]

It read as decoration rather than hierarchy, and it was the wrong colour — a teal glow under an indigo gradient border, so the two never resolved into a single accent.

The gradient border and the "Most popular" badge already carry the distinction, so the glow is replaced with plain neutral elevation, shadow-md shadow-black/20, which is how the rest of the app treats raised surfaces (TourTooltip, AccountMenu). Border gradients toned down slightly to sit with it.

Em dashes in billing copy

before after
Subscribe — ₦3,500/mo Subscribe for ₦3,500/mo
Renew — ₦3,500/mo Renew for ₦3,500/mo
Upgrade to Pro — $7/mo Upgrade to Pro for $7/mo
hookdrop Pro — Annual hookdrop Pro Annual
Cancellation scheduled — access until X Cancellation scheduled. Access continues until X

The non-renewal notice was one long sentence hinged on a dash. Now three plain ones:

This payment covered a single period. The method you paid with cannot be charged again, so it will not renew automatically. Renewing adds a new period to whatever time you have left.

Scope: billing copy only. Em dashes remain in the terms, privacy and product-tour text, and in code comments — say the word if you want those swept too. I also left the glow on LandingPage's mock feed panel, since that is not a plan card.

The plan cards carried a large coloured glow,
shadow-[0_0_50px_-18px_rgba(20,184,166,0.55)], which read as decoration
rather than hierarchy. It was also the wrong colour: a teal glow under an
indigo gradient border, so the two never resolved into one accent.

The gradient border and the "Most popular" badge already distinguish the
Pro card, so the glow is replaced with plain neutral elevation
(shadow-md shadow-black/20), matching how the rest of the app handles
raised surfaces. The border gradients are toned down slightly to sit with
it.

Also removes em dashes from billing copy, which had crept into buttons
and the renewal notice. Rewritten as ordinary sentences:

  "Subscribe — ₦3,500/mo"        -> "Subscribe for ₦3,500/mo"
  "Upgrade to Pro — $7/mo"       -> "Upgrade to Pro for $7/mo"
  "Cancellation scheduled — ..." -> "Cancellation scheduled. Access
                                    continues until ..."

The non-renewal notice was one long sentence hinged on a dash; it is now
three plain ones. Em dashes elsewhere in the app (terms, privacy, tour
copy) are untouched.
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Deploying hookdrop with  Cloudflare Pages  Cloudflare Pages

Latest commit: 17b4fe7
Status: ✅  Deploy successful!
Preview URL: https://e94aa4a9.hookdrop.pages.dev
Branch Preview URL: https://fix-plan-card-polish.hookdrop.pages.dev

View logs

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Deploying hookdrop-frontend with  Cloudflare Pages  Cloudflare Pages

Latest commit: 17b4fe7
Status: ✅  Deploy successful!
Preview URL: https://4b130536.hookdrop-frontend.pages.dev
Branch Preview URL: https://fix-plan-card-polish.hookdrop-frontend.pages.dev

View logs

Sweeps the remaining em dashes after the billing copy was cleaned up in
the previous change. 222 replacements across 68 files, covering comments,
log lines, test failure messages, CLI docs and the last few user-facing
strings.

Mostly rewritten as two sentences, since in almost every case the dash
was introducing an independent clause. Where it introduced a dependent
one ("so", "which", "over") a comma is used instead, and where it
introduced a quotation a colon reads better.

The mechanical pass needed three corrections afterwards, all found by
reading the diff rather than trusting it:

  - it capitalised identifiers at what it took to be a sentence start,
    so comments named charge.success, order_created and
    subscription_updated with the wrong casing
  - a quoted line from Paystack's docs ended up opening a sentence in
    lowercase
  - dependent clauses became sentence fragments

One em dash is deliberately kept: SettingsTokensPage uses '—' as the
placeholder for an absent timestamp, which is typography rather than
prose.

Go build, vet and tests pass; the CLI module and the UI build pass.
@EOEboh
EOEboh merged commit ed1d94c into main Aug 3, 2026
6 checks passed
EOEboh added a commit that referenced this pull request Aug 3, 2026
* fix(ui): calm the plan cards and drop em dashes from billing copy

The plan cards carried a large coloured glow,
shadow-[0_0_50px_-18px_rgba(20,184,166,0.55)], which read as decoration
rather than hierarchy. It was also the wrong colour: a teal glow under an
indigo gradient border, so the two never resolved into one accent.

The gradient border and the "Most popular" badge already distinguish the
Pro card, so the glow is replaced with plain neutral elevation
(shadow-md shadow-black/20), matching how the rest of the app handles
raised surfaces. The border gradients are toned down slightly to sit with
it.

Also removes em dashes from billing copy, which had crept into buttons
and the renewal notice. Rewritten as ordinary sentences:

  "Subscribe — ₦3,500/mo"        -> "Subscribe for ₦3,500/mo"
  "Upgrade to Pro — $7/mo"       -> "Upgrade to Pro for $7/mo"
  "Cancellation scheduled — ..." -> "Cancellation scheduled. Access
                                    continues until ..."

The non-renewal notice was one long sentence hinged on a dash; it is now
three plain ones. Em dashes elsewhere in the app (terms, privacy, tour
copy) are untouched.

* style: remove em dashes from comments, copy and log output

Sweeps the remaining em dashes after the billing copy was cleaned up in
the previous change. 222 replacements across 68 files, covering comments,
log lines, test failure messages, CLI docs and the last few user-facing
strings.

Mostly rewritten as two sentences, since in almost every case the dash
was introducing an independent clause. Where it introduced a dependent
one ("so", "which", "over") a comma is used instead, and where it
introduced a quotation a colon reads better.

The mechanical pass needed three corrections afterwards, all found by
reading the diff rather than trusting it:

  - it capitalised identifiers at what it took to be a sentence start,
    so comments named charge.success, order_created and
    subscription_updated with the wrong casing
  - a quoted line from Paystack's docs ended up opening a sentence in
    lowercase
  - dependent clauses became sentence fragments

One em dash is deliberately kept: SettingsTokensPage uses '—' as the
placeholder for an absent timestamp, which is typography rather than
prose.

Go build, vet and tests pass; the CLI module and the UI build pass.
@EOEboh
EOEboh deleted the fix/plan-card-polish branch August 3, 2026 22:32
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