Skip to content

fix(web): contest skeleton title block reads as text, not a slab#14345

Open
dylanjeffers wants to merge 1 commit into
mainfrom
claude/fix-contest-skeleton-size
Open

fix(web): contest skeleton title block reads as text, not a slab#14345
dylanjeffers wants to merge 1 commit into
mainfrom
claude/fix-contest-skeleton-size

Conversation

@dylanjeffers
Copy link
Copy Markdown
Contributor

Summary

  • The Explore page's Contests row had skeletons that reserved the correct overall card height (313px to match the resolved ContestCard), but the title placeholder was a single solid 80% wide x 64px tall grey bar. Even though the dimensions matched, the dense slab read as visually too big alongside the lighter 1-2 lines of heading text it was standing in for.
  • Splits that 64px (grid) / 80px (hero) title block into two stacked skeleton bars sized to the real heading line-height (22px for heading/m, 28px for heading/l), centered inside a container fixed at the same total height. Card total dimensions are unchanged - measured 320x313 in skeleton and resolved states at 1440x900 - so no layout shift when data resolves.

Test plan

  • Load /explore at 1440x900 with the Contests row offscreen-triggered; measure the skeleton card -> 320x313, same as the resolved ContestCard.
  • Watch the transition from skeleton -> resolved: contest titles drop in without the row jumping.
  • Spot-check the hero variant (used on the dedicated /contests page) - the same logic applies (80px block, 28px bars).

🤖 Generated with Claude Code

The skeleton on the Explore Contests row reserved the right vertical
space (64px) but filled the whole title area with a single solid
80%-wide grey bar, which read as a much heavier element than the 1–2
lines of heading text that eventually replace it. Split the
placeholder into two stacked bars sized to the real heading line-height
(grid: 22px x 2, hero: 28px x 2), still centered inside the same
reserved 64/80px block so the resolved card lands at the same height
with no layout shift.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@changeset-bot
Copy link
Copy Markdown

changeset-bot Bot commented May 16, 2026

⚠️ No Changeset found

Latest commit: 3b32f03

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions
Copy link
Copy Markdown
Contributor

🌐 Web preview ready

Preview URL: https://audius-web-preview-pr-14345.audius.workers.dev

Unique preview for this PR (deployed from this branch).
Workflow run

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant