Align sign in button with site design system#61
Conversation
|
@pchalupa is attempting to deploy a commit to the Pro Team Team on Vercel. A member of the Team first needs to authorize it. |
Co-authored-by: Copilot <copilot@github.com> Signed-off-by: pchalupa <chalupa.petr93@gmail.com>
53eda7b to
44e0a04
Compare
| href="/api/auth/signin" | ||
| className="rounded-full border border-border bg-primary px-4 py-2 text-xs font-semibold uppercase tracking-[0.2em] text-primary-foreground transition hover:bg-primary/90" | ||
| > | ||
| <RFDS.ButtonLink href="/api/auth/signin" size="sm"> |
There was a problem hiding this comment.
This swap does fix the contrast token, but it also changes the sign-in CTA typography/spacing/shadow (text-xs uppercase tracking -> default ButtonLink sm). Please either preserve the previous shape more narrowly or document/test the broader visual restyle so the scope matches the PR description.
There was a problem hiding this comment.
Visually, it makes sense to use a consistent style for the primary button, so that "Get involved" and "Sign in" buttons now look more unified.
dougbot-agent
left a comment
There was a problem hiding this comment.
Thanks for the contribution — good direction here.
A few things we need before merging:
- Tests
We need explicit test coverage for the unauthenticated header CTA change. This is a user-visible behavior fix, and the current PR leaves the test-plan boxes unchecked. - Scope / description
The implementation does more than change text color: it swaps in the default RFDS button styling, which also changes sizing/typography/shadow. Please either narrow the change to the contrast fix or update the PR/tests to cover the broader restyle intentionally. - Verification
I pulled the branch locally andnpm run lint -- src/components/layout/header.tsxplusnpx tsc --noEmitboth pass. CI is mostly green here; the Vercel check is just waiting on authorization, so the blocking feedback is about coverage/scope rather than build health.
Once those are addressed, we can take another pass.
|
@sethwebster maintainer note: the current Vercel check is blocked on team authorization rather than contributor code. Contributor-side review feedback is already on the PR (tests/scope), but if those changes land this repo-side authorization will still need attention. |
|
|
Thanks for the follow-up. The title update helps, but the blocking point is still automated coverage. For this repo, user-visible fixes need a regression check even when the change is “just visual,” because otherwise we have no durable way to catch the same contrast/style regression later. Manual verification is useful, but it is not enough on its own for merge. What would unblock this from my side:
Once that is in place, I’m happy to take another pass. |
0d808f9 to
69d6114
Compare
|
dougbot-agent
left a comment
There was a problem hiding this comment.
Thanks for the update — this is closer.
The remaining blocker on my side is the new regression coverage itself:
- CI is currently failing because the PR only adds a Darwin snapshot (
header-sign-in-chromium-darwin.png), while the GitHub Actions runner expects the Linux baseline (header-sign-in-chromium-linux.png). - Please either regenerate/commit the Linux snapshot used in CI, or switch this to a platform-agnostic assertion that validates the intended sign-in CTA treatment without depending on a macOS-only artifact.
- Once that test is green, I’m happy to take another pass.
Separately, the Vercel authorization failure still looks maintainer-side rather than contributor-side.
Signed-off-by: pchalupa <chalupa.petr93@gmail.com>
44eb5c0 to
72516ec
Compare
Good catch! A Linux screenshot has been added. |
dougbot-agent
left a comment
There was a problem hiding this comment.
This looks solid.
- Clear fix
- Tests cover behavior
- Implementation is clean
Approved ✅
Summary
The "Sign in" button in the header used a one-off class string instead of the design system's primary button primitive. That ad-hoc styling diverged from the rest of the site's primary CTAs and, as a side effect, produced a low-contrast text color in dark mode. This PR replaces the custom
LinkwithRFDS.ButtonLink, aligning the sign-in CTA with the design system and removing the contrast drift permanently.Root Cause (for bugs)
Wrong color on the button's text.
Solution
Replaced the Next.js
Linkcomponent with theRFDS.ButtonLinkcomponent.Scope
Test Plan
Describe specific scenarios tested:
The sign-in button displays with white text in dark mode.
Screenshots (if UI)
Before
After
Screen.Recording.2026-05-08.at.11.26.29-compressed.mp4
Checklist