shadcn.io is not affiliated with official shadcn/ui
Leaderboard Web3 Block for Svelte
A season leaderboard of thirty contributors ranked by points, volume or votes, a season select, rank changes from the previous season as arrow, number and word, and your own row pinned under the list with the gap to the rank above.
Installation
Overview
Show where a member stands, and how far the next place is, with this leaderboard for Svelte with Ark UI. It's the ranking of Seasonrank, a community program. A hairline frame with a plus mark on each corner starts with a toolbar: a Toggle Group picks the metric (Points, Volume or Votes) and a Native Select the season. Under it thirty typed contributors are ranked by that metric and shown ten at a time; each row has the rank, initials, a handle, the value and the change from the previous season as an arrow, a number and a word ("Up 3 places"). Your own row is pinned under the list with the gap to the rank above, "You are #17, 118 points behind #16", and keeps its space when you are already inside the list. Show 10 more extends the list in a scroll region that keeps its height. For DAOs, trading communities and any program that ranks by what people do.
FAQ
How are the ranks worked out?
Every contributor has three typed scores in each of two seasons. The list sorts them by the chosen metric, highest first, with ties keeping the list order, and the rank is the position. Change a score in the typed data and the order, the change column, the header sentence and your gap all follow.
Where does the rank change come from?
It compares a contributor's rank in this season with their rank for the same metric in the season before: Up 3 places, Down 2 places or No change. In Season 2 there is no earlier season in this demo, so the rows say so. The arrow is a shape and the words say the same, so no hue carries it.
What is the pinned row?
Your row, always, under the list: when you are below the visible ten it shows your rank and how far you are from the contributor above you in the metric's own unit. When you are already inside the list it keeps its space but is hidden, and the line above it says where you are, so the panel never changes height.
What stays local, and how do I wire it?
All of it. The thirty contributors and their scores are typed lines at the top of the file and the show-more count is local state; volume is sample figures in USD, not market data. In your app rank on your server with the same tie rule, page the list instead of holding it, and compute your own row's gap there.