Skip to content

Refine Primary region cards#71

Merged
kyleve merged 1 commit into
mainfrom
cursor/primary-card-refinements
Jul 8, 2026
Merged

Refine Primary region cards#71
kyleve merged 1 commit into
mainfrom
cursor/primary-card-refinements

Conversation

@kyleve

@kyleve kyleve commented Jul 8, 2026

Copy link
Copy Markdown
Owner

Polishes the RegionSummaryCard styling on the Primary tab so it reads less generic and more like an intentional passport-stamp card.

Changes

  • Progress bar — taller on the big Primary cards (progressBarHeight 6 → 10pt; compact Elsewhere cards keep 6 via a new progressBarHeightCompact), and a flat style.tint fill instead of the gradient.
  • Day count — shrink the hero number (heroNumberFontSize 46 → 40) and enlarge the "days" unit (.subheadline.title3 on Primary) so the number and unit read as a balanced pair rather than a huge number next to tiny text.
  • Region name header
    • Larger: fixed 38pt serif. Measured against the layout budget (deviceWidth − 188), the common names ("California" ~183pt, "New York" ~173pt) fit fully even on the smallest iPhone; over-long names tighten then scale via minimumScaleFactor(0.7) rather than wrapping or overlapping the stamp.
    • Top-aligned header row so the title hugs the top instead of floating centered against the tall entry stamp (addresses the "too much top spacing" feel).
    • Tinted to match the day count (style.tint) at 0.8 opacity so it picks up a bit of the card behind it.
    • Natural casing instead of forced all-caps, with tightened tracking (-0.5), and kept to one line with allowsTightening.
  • Emoji — removed from the card header (still used in the widgets, timeline, and toggle row), freeing horizontal room for the larger title.

Notes

  • Pure presentational change in RegionSummaryCard + UIConstants; no logic, public API, or tests touched.
  • The Primary header now uses a fixed point size (like the hero number already does), so it no longer grows with Dynamic Type — it does still shrink to fit. Called out in case we'd prefer .largeTitle (which keeps Dynamic Type but makes "California" render noticeably smaller than "New York" between the two stacked cards).
  • Verified with ./swiftformat --lint (clean). This is UI-only; the iOS test schemes run in CI.
Open in Web Open in Cursor 

Polish the RegionSummaryCard styling on the Primary tab so it reads less
generic:

- Progress bar: taller on the big cards (6→10pt, compact stays 6) and a
  flat tint fill instead of the gradient.
- Day count: shrink the hero number (46→40) and enlarge the "days" unit
  (subheadline→title3) so they read as a balanced pair.
- Region name header: larger (fixed 38pt serif), top-aligned so it hugs
  the top rather than floating against the stamp, tinted to match the day
  count at 0.8 opacity, natural casing instead of all-caps, tightened
  tracking, and one-line with allowsTightening + minimumScaleFactor.
- Drop the emoji from the card header (kept elsewhere it's used).
@kyleve kyleve marked this pull request as ready for review July 8, 2026 22:20
@kyleve kyleve merged commit 61dda62 into main Jul 8, 2026
2 checks passed
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