Skip to content

619: Updated skeletons - #642

Merged
az2924 merged 2 commits into
mainfrom
619
Jan 13, 2026
Merged

619: Updated skeletons#642
az2924 merged 2 commits into
mainfrom
619

Conversation

@az2924

@az2924 az2924 commented Jan 11, 2026

Copy link
Copy Markdown
Contributor

619

Description of changes

  • MiniLeaderboardMobileSkeleton.tsx (Removed table structure; Added All & Patina tabs)
  • MiniLeaderboardSkeleton.tsx (Removed table structure; Added All & Patina tabs)
  • IncompleteQuestionListSkeleton.tsx (Removed Search and Pages Buttons)
  • AllLeaderboardAdminSkeleton.tsx (Added Search and Created buttons)
  • UserAdminListSkeleton.tsx (Added pages button and aligned boxes)
  • DashboardLeaderboardSkeleton.tsx (Added All & Patina tabs)
  • UserSubmissionsSkeleton.tsx (Added search, pages, and removed table structure)
  • MiniUserSubmissionsSkeleton.tsx (Removed table structure, added points, & added completion time)
  • RecentSubmissionsSkeleton.tsx (Removed table structure, added points, & completion added time)
  • UserTagsSkeleton.tsx (Added extra row for Leaderboards)
  • UserProfileHeaderSkeleton.tsx (Adjusted width)
  • LeaderboardSkeleton.tsx (Removed table structure)
  • SkeletonButton.tsx (Decreased size of upper right-hand profile picture)

Checklist before review

  • I have done a thorough self-review of the PR
  • Copilot has reviewed my latest changes, and all comments have been fixed and/or closed.
  • If I have made database changes, I have made sure I followed all the db repo rules listed in the wiki here. (check if no db changes)
  • All tests have passed
  • I have successfully deployed this PR to staging
  • I have done manual QA in both dev (and staging if possible) and attached screenshots below.

Screenshots

Dev

  1. DashboardLeaderboardSkeleton.tsx & MiniUserSubmissionsSkeleton.tsx
Screenshot 2026-01-11 at 3 58 01 PM
  1. LeaderboardSkeleton.tsx & SkeletonButton.tsx
Screenshot 2026-01-11 at 3 58 14 PM
  1. MiniLeaderboardMobileSkeleton.tsx
Screenshot 2026-01-11 at 4 04 57 PM Screenshot 2026-01-11 at 3 58 32 PM
  1. MiniLeaderboardSkeleton.tsx
Screenshot 2026-01-11 at 3 58 51 PM
  1. IncompleteQuestionListSkeleton.tsx, AllLeaderboardAdminSkeleton.tsx, & UserAdminListSkeleton.tsx
Screenshot 2026-01-11 at 3 59 32 PM
  1. UserProfileHeaderSkeleton.tsx, UserTagsSkeleton.tsx, & RecentSubmissionsSkeleton.tsx
Screenshot 2026-01-11 at 3 59 57 PM
  1. UserSubmissionsSkeleton.tsx
Screenshot 2026-01-11 at 4 00 07 PM

Staging

  1. DashboardLeaderboardSkeleton.tsx & MiniUserSubmissionsSkeleton.tsx
Screenshot 2026-01-11 at 4 48 16 PM
  1. LeaderboardSkeleton.tsx & SkeletonButton.tsx
Screenshot 2026-01-11 at 4 48 25 PM
  1. MiniLeaderboardMobileSkeleton.tsx
Screenshot 2026-01-11 at 4 48 35 PM Screenshot 2026-01-11 at 4 48 41 PM
  1. MiniLeaderboardSkeleton.tsx
Screenshot 2026-01-11 at 4 48 50 PM
  1. IncompleteQuestionListSkeleton.tsx, AllLeaderboardAdminSkeleton.tsx, & UserAdminListSkeleton.tsx
Screenshot 2026-01-11 at 4 49 02 PM
  1. UserProfileHeaderSkeleton.tsx, UserTagsSkeleton.tsx & RecentSubmissionsSkeleton.tsx
Screenshot 2026-01-11 at 4 49 12 PM
  1. UserSubmissionsSkeleton.tsx
Screenshot 2026-01-11 at 4 49 21 PM

@github-actions

Copy link
Copy Markdown
Contributor

Title

619: Updated skeletons


PR Type

Enhancement


Description

  • Replace table-based skeletons with card rows

  • Add segmented controls for filters

  • Standardize spacing, sizes, pagination skeletons

  • Simplify headers and user tags skeletons


Diagram Walkthrough

flowchart LR
  tables["Table-based skeletons"] -- "replace with" --> cards["Card/list row skeletons"]
  headers["Header/search skeletons"] -- "simplify and resize" --> consistency["Consistent sizing"]
  filters["Filter/segment controls"] -- "add skeletons" --> leaderboards["Leaderboard skeletons"]
  pagination["Pagination dots skeletons"] -- "centered and uniform" --> multiplePages["Lists and leaderboards"]
Loading

File Walkthrough

Relevant files
Enhancement
12 files
MiniLeaderboardMobileSkeleton.tsx
Convert to card rows with filter buttons                                 
+29/-43 
MiniLeaderboardSkeleton.tsx
Replace table with cards and controls                                       
+27/-41 
IncompleteQuestionListSkeleton.tsx
Remove header/pagination, enlarge items                                   
+2/-11   
AllLeaderboardAdminSkeleton.tsx
Add search/create controls and centered pagination             
+9/-8     
UserAdminListSkeleton.tsx
Add header item and centered pagination                                   
+5/-7     
DashboardLeaderboardSkeleton.tsx
Simplify header, add filters, card rows                                   
+18/-45 
LeaderboardSkeleton.tsx
Replace table with flex rows and pagination                           
+27/-33 
UserProfileHeaderSkeleton.tsx
Consolidate to single larger title skeleton                           
+1/-2     
UserTagsSkeleton.tsx
Add second row of tag boxes                                                           
+11/-5   
MiniUserSubmissionsSkeleton.tsx
Replace table with stacked card items                                       
+23/-64 
UserSubmissionsSkeleton.tsx
Convert table to cards with pagination                                     
+28/-54 
SkeletonButton.tsx
Reduce skeleton button width                                                         
+1/-1     

@github-actions

Copy link
Copy Markdown
Contributor

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Accessibility

The newly added tab-like Skeletons for "All" and "Patina" are purely visual; consider adding aria-role or placeholder text for screen readers to mirror the intended tabs/segmented control for better a11y during loading.

<Flex justify="center" mb="xl" style={{ gap: "2px" }}>
  <Skeleton visible width="150px" height="36px" />
  <Skeleton visible width="150px" height="36px" />
</Flex>
Consistency

List row skeletons now mimic cards; ensure spacing, heights, and counts align with the actual list layout to avoid CLS when real data loads, especially with the 17-item render and pagination placeholders.

{Array(17)
  .fill(0)
  .map((_, index) => (
    <Flex
      key={index}
      justify="space-between"
      align="center"
      mb="md"
      p="md"
      style={{
        borderRadius: "8px",
        backgroundColor: "rgba(255, 255, 255, 0.02)",
      }}
    >
      <Flex align="center" gap="md">
        <Skeleton visible width="2rem" height="2rem" />
        <Skeleton visible width="200px" height="3rem" />
      </Flex>
      <Skeleton visible width="3rem" height="2rem" />
    </Flex>
  ))}
<Box p="xl" display="flex" style={{ justifyContent: "center" }}>
  {[...Array(8)].map((_, i) => (
    <Skeleton key={i} height={30} width={30} mr={8} />
  ))}
</Box>
Layout Parity

The structure changed from one row of three to two rows; verify this matches the actual UserTags layout to prevent layout shift between skeleton and loaded content.

  <Flex wrap="wrap" gap="sm">
    <Skeleton height={40} width={40} />
    <Skeleton height={40} width={40} />
  </Flex>
  <Flex wrap="wrap" gap="sm">
    <Skeleton height={40} width={40} />
    <Skeleton height={40} width={40} />
    <Skeleton height={40} width={40} />
  </Flex>
</>

Comment thread js/src/app/_component/skeletons/MiniLeaderboardMobileSkeleton.tsx Outdated
Comment thread js/src/app/leaderboard/_components/LeaderboardSkeleton.tsx
@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.73% 🍏

There is no coverage information present for the Files changed

@az2924

az2924 commented Jan 11, 2026

Copy link
Copy Markdown
Contributor Author

/deploy

@github-actions

Copy link
Copy Markdown
Contributor

The command to deploy to staging for the commit b5cad2d has been triggered. View action run

@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.73% 🍏

There is no coverage information present for the Files changed

@github-actions

Copy link
Copy Markdown
Contributor

Staging deployment succeeded for commit b5cad2d

View run

@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.73% 🍏

There is no coverage information present for the Files changed

@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.81% 🍏

There is no coverage information present for the Files changed

@az2924

az2924 commented Jan 11, 2026

Copy link
Copy Markdown
Contributor Author

/deploy

@github-actions

Copy link
Copy Markdown
Contributor

The command to deploy to staging for the commit a5a994d has been triggered. View action run

@az2924

az2924 commented Jan 11, 2026

Copy link
Copy Markdown
Contributor Author

/deploy

@github-actions

Copy link
Copy Markdown
Contributor

Staging deployment was cancelled for commit a5a994d

View run

@github-actions

Copy link
Copy Markdown
Contributor

The command to deploy to staging for the commit 476459d has been triggered. View action run

@github-actions

Copy link
Copy Markdown
Contributor

Title

619: Updated skeletons


PR Type

Enhancement


Description

  • Replace table skeletons with card rows

  • Add tab and control skeletons

  • Align sizes to current UI

  • Update pagination skeleton indicators


Diagram Walkthrough

flowchart LR
  tables["Table-based skeletons"] -- "replaced with" --> cards["Card/Paper row skeletons"]
  headers["Headers & tabs"] -- "added/updated" --> controls["Search, filters, tabs skeletons"]
  pagination["Pagination placeholders"] -- "standardized" --> dots["Centered dot buttons"]
  sizing["Sizing tweaks"] -- "adjusted" --> consistency["Visual consistency across pages"]
Loading

File Walkthrough

Relevant files
Enhancement
12 files
MiniLeaderboardMobileSkeleton.tsx
Convert to card rows and add tabs                                               
+27/-43 
MiniLeaderboardSkeleton.tsx
Replace table with paper rows and tabs                                     
+27/-45 
IncompleteQuestionListSkeleton.tsx
Simplify list; remove controls; larger rows                           
+2/-11   
AllLeaderboardAdminSkeleton.tsx
Add search/create bars and pagination dots                             
+10/-9   
UserAdminListSkeleton.tsx
Add header and centered pagination dots                                   
+7/-9     
DashboardLeaderboardSkeleton.tsx
Streamline leaderboard with tabs and row blocks                   
+16/-45 
LeaderboardSkeleton.tsx
Replace table with paper list and pagination                         
+29/-48 
UserProfileHeaderSkeleton.tsx
Adjust header skeleton to single larger line                         
+1/-2     
UserTagsSkeleton.tsx
Add extra row of tag skeletons                                                     
+11/-5   
MiniUserSubmissionsSkeleton.tsx
Convert table to paper rows in scroll area                             
+23/-66 
UserSubmissionsSkeleton.tsx
Replace table with cards, add controls and pagination       
+37/-64 
SkeletonButton.tsx
Reduce skeleton button width                                                         
+1/-1     

@github-actions

Copy link
Copy Markdown
Contributor

PR Reviewer Guide 🔍

Here are some key observations to aid the review process:

⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review

Accessibility

The added tab-like Skeletons for "All" and "Patina" appear as generic blocks without ARIA roles or descriptive placeholders; ensure the interactive pattern (tabs vs. buttons) is consistent with the actual UI and that focus order/labels are represented appropriately in skeleton state.

<Box pos={"relative"} p={"xs"}>
  <Flex justify="center" mb="xl" gap="xxs">
    <Skeleton visible flex={1} maw="180px" w="50%" height="36px" />
    <Skeleton visible flex={1} maw="180px" w="50%" height="36px" />
  </Flex>
Consistency

Dashboard skeleton adds two tab Skeletons and list rows; verify this matches the Notion requirement for "All & Patina tabs" and includes a "View All" button skeleton if that exists in the real component for consistency with other leaderboard skeletons.

<Flex direction={"row"} justify={"space-between"} w={"100%"} mb="md">
  <Skeleton w={"8rem"} h={"1.75rem"} />
  <Skeleton w={"5.55rem"} h={"2.25rem"} />
</Flex>
<Flex justify="center" mb="xl" gap="xxs">
  <Skeleton visible width="50%" height="36px" />
  <Skeleton visible width="50%" height="36px" />
</Flex>
Performance

Rendering 17 Paper rows with Skeletons can be heavy on low-end devices; consider memoizing the mapped list or using lightweight placeholders if perf issues arise on slow networks.

{Array(17)
  .fill(0)
  .map((_, index) => (
    <Paper
      key={index}
      mb="md"
      p="md"
      bg="rgba(255, 255, 255, 0.02)"
      radius={8}
    >
      <Group justify="space-between" align="center">
        <Flex align="center" gap="md">
          <Skeleton visible width="2rem" height="2rem" />
          <Skeleton visible w="60%" maw={320} miw={120} height="3rem" />
        </Flex>
        <Skeleton visible w="4rem" height="2rem" />
      </Group>
    </Paper>
  ))}

Comment thread js/src/app/_component/skeletons/MiniLeaderboardMobileSkeleton.tsx
Comment thread js/src/app/leaderboard/_components/LeaderboardSkeleton.tsx Outdated
@az2924

az2924 commented Jan 11, 2026

Copy link
Copy Markdown
Contributor Author

/deploy

@github-actions

Copy link
Copy Markdown
Contributor

Staging deployment was cancelled for commit 476459d

View run

@github-actions

Copy link
Copy Markdown
Contributor

The command to deploy to staging for the commit eeb07e9 has been triggered. View action run

@github-actions

Copy link
Copy Markdown
Contributor

Staging deployment failed for commit eeb07e9

**

View run

@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.47% 🍏

There is no coverage information present for the Files changed

@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.73% 🍏

There is no coverage information present for the Files changed

@github-actions

Copy link
Copy Markdown
Contributor

Staging deployment succeeded for commit eeb07e9

View run

tahminator
tahminator previously approved these changes Jan 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Commit Validation Failed

The following commits do not start with the required Notion ID 619:

600: Unified leaderboards logic into one component
600: Removed isHistorical from .page
600: Fixed copilot suggestions

Please rebase and update your commit messages.
All messages should be of the following format: 619: Example commit

@github-actions

Copy link
Copy Markdown
Contributor

Commit Validation Failed

The following commits do not start with the required Notion ID 619:

600: Unified leaderboards logic into one component
600: Removed isHistorical from .page
600: Fixed copilot suggestions

Please rebase and update your commit messages.
All messages should be of the following format: 619: Example commit

@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 76.26% 🍏

There is no coverage information present for the Files changed

@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.73% 🍏

There is no coverage information present for the Files changed

@az2924
az2924 merged commit 1a6a56c into main Jan 13, 2026
12 checks passed
@github-actions

Copy link
Copy Markdown
Contributor
Overall Project 75.73% 🍏

There is no coverage information present for the Files changed

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.

2 participants