Skip to content

Align frontend with the QRL Blue design system - #49

Merged
moscowchill merged 2 commits into
devfrom
feat/qrl-blue-align
Sep 24, 2026
Merged

moscowchill merged 2 commits into
devfrom
feat/qrl-blue-align

Conversation

@moscowchill

Copy link
Copy Markdown
Contributor

Summary

  • Ports the wallet's QRL Blue palette and Inter numeric typeface into QuantaPool's src/index.css, keeping the dApp's own deltas (body as scroll container, no chart/sidebar tokens, background-attachment fixed).
  • Applies .font-numeric (Inter, tabular digits) to every balance, amount, fee, block/slot count and deposit ID across StatsBar, AmountInput, StakePage, WithdrawalsPage, ActivityCard and StatsPage. Addresses, hashes and rdns stay on .font-data (mono).
  • Retokens the QuantaPool droplet mark (public/quantapool.svg, public/social-card.svg) from ember orange to the new sky-blue/ice-blue pair. The mark's shape is unchanged, it is still QuantaPool's own logo.
  • Swaps the MyQRLWallet entry in the EIP-6963 wallet picker to the current 3A mark (public/myqrlwallet-icon.svg) instead of the connect SDK's baked icon, in poolStore.ts.
  • Adds @fontsource-variable/inter, imported in main.tsx next to the other self-hosted fonts.
  • Lifts the destructive token to hsl(0 72% 64%) with a deep maroon foreground (same fix the wallet shipped for the 12px contrast failure). No QuantaPool destructive text is currently rendered at 12px, so this is a forward-looking parity fix rather than an active bug fix here.

Test plan

  • npm ci
  • npm run lint (zero warnings)
  • npm run typecheck
  • npm test (42/42 pass)
  • npm run build
  • Playwright headless screenshots at 1280px and 390px of the stake page and the wallet picker, before (origin/dev) and after
  • Verified .font-numeric elements resolve to "Inter Variable" via computed styles
  • Live device/browser check (not done in this pass)

https://claude.ai/code/session_01LWKZ1b4FBetebjo1kcNHJ8

Ports the wallet's QRL Blue palette and Inter numeric typeface into
QuantaPool so the dApp reads as part of the same product family after
the wallet's rebrand from Obsidian & Ember. Keeps the dApp's own
scroll and layout deltas from the wallet (body as scroll container,
no chart/sidebar tokens).

Retokens the QuantaPool droplet mark from ember orange to the new
sky-blue and ice-blue pair, and swaps the wallet-picker's MyQRLWallet
icon for the current 3A mark instead of the SDK's baked EIP-6963
icon.

Claude-Session: https://claude.ai/code/session_01LWKZ1b4FBetebjo1kcNHJ8
The rdns identifier sat beside the wallet name in one flex row with
no min-w-0 or truncate, so a long value like com.qrlwallet.extension
ran past the row and card border at 390px. Stacks the name and rdns
vertically instead, each truncating independently within a min-w-0
flex-1 container.

Claude-Session: https://claude.ai/code/session_01LWKZ1b4FBetebjo1kcNHJ8
@moscowchill

Copy link
Copy Markdown
Contributor Author

Fixed the wallet-picker overflow at 390px reported in review.

WalletPickerModal.tsx: the name and rdns were one flex row with no min-w-0/truncate, so com.qrlwallet.extension (and the shorter com.qrlwallet.connect) ran past the row and card border on narrow widths. Now the name sits above the rdns in a min-w-0 flex-1 flex-col container, each line truncating independently. Icon got shrink-0 so it can't be squeezed by the longer text.

Verified both rows (relay MyQRLWallet and a fake-injected MyQRLWallet Extension / com.qrlwallet.extension) via computed bounding boxes at 390px and 1280px: both rows and all their children now stay within the card's right edge. Re-ran the full gate: npm run lint (0 warnings), npm run typecheck, npm test (42/42), npm run build, all green. New screenshots taken with the same headless Playwright setup.

Claude-Session: https://claude.ai/code/session_01LWKZ1b4FBetebjo1kcNHJ8

@moscowchill
moscowchill merged commit ef99b79 into dev Sep 24, 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