Skip to content

Conversation

@marcodejongh
Copy link
Owner

  • Replace pathname-based loading hide with explicit page-ready signal
  • Loading overlay now persists until page content is actually rendered
  • Add 10-second safety timeout to prevent infinite loading states
  • Add memoization to ClimbCard, BoardRenderer, and BoardLitupHolds
  • Add Suspense boundary with skeleton fallback to board layout
  • Create PageReadySignal component to signal when pages are ready

This fixes the "freeze" at the end of loading where the overlay would
disappear before the page content was rendered, causing a blank screen.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.5 noreply@anthropic.com

marcodejongh and others added 7 commits December 26, 2025 16:28
- Replace pathname-based loading hide with explicit page-ready signal
- Loading overlay now persists until page content is actually rendered
- Add 10-second safety timeout to prevent infinite loading states
- Add memoization to ClimbCard, BoardRenderer, and BoardLitupHolds
- Add Suspense boundary with skeleton fallback to board layout
- Create PageReadySignal component to signal when pages are ready

This fixes the "freeze" at the end of loading where the overlay would
disappear before the page content was rendered, causing a blank screen.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Convert string keys from Object.keys() to numbers for LitUpHoldsMap indexing.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The component uses AntD components which need to be client-side rendered.
Also use modular antd imports for better tree-shaking.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Re-add pathname change detection with 2-second delay as fallback
- Use refs to track loading state for reliable timeout checks
- Keep 10-second ultimate timeout as safety net

The loading will now hide:
1. Immediately when signalPageReady() is called
2. After 2 seconds when pathname changes (fallback)
3. After 10 seconds no matter what (safety net)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add ClimbCardTitleSkeleton matching horizontal layout with V grade
- Add BoardRendererSkeleton with board background and hold circles
- Add CardActionsSkeleton with action button placeholders
- Use theme tokens for consistent styling

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Use actual AntD Card actions prop with real icons (muted color)
- Simplify board renderer skeleton to just a placeholder area
- Match the card structure: header, body, actions
- Adjust sizes for better visual match

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Remove unnecessary Promise.all wrappers around single promises in layout.tsx and page.tsx
- Remove leftover debugger statement in board-config-live-preview.tsx
@vercel
Copy link

vercel bot commented Dec 26, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
boardsesh Ready Ready Preview, Comment Dec 26, 2025 6:51am

- Convert BoardPageSkeleton to server component (removed 'use client')
- Use Ant Design Skeleton components instead of custom divs
- Improve ClimbCard memo comparison:
  - Add areActionsEqual helper for proper array comparison
  - Handle empty arrays case (actions={[]})
  - Add fallback boardDetails comparison by identifiers
  - Better structured comparison logic with early returns
Ant Design Skeleton components with animations require client-side
rendering. The server component approach caused hydration errors.
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.

3 participants