[FEATURE] - Leaderboard #55

Closed
opened 2026-02-19 16:42:22 -08:00 by naomi · 0 comments
Owner

Attestations

  • I have read and agree to the Code of Conduct
  • I have read and agree to the Community Guidelines.
  • I have confirmed that the issue I am opening is unique, and has not already been reported (whether closed or not).
  • I have reviewed the Security Policy and have determined that this is not a security vulnerability.
  • This is not a feature request or bug report that I am mis-filing to avoid the issue template.

Share your thoughts:

Create a leaderboard page to showcase the most active and engaged users in the library community.

Leaderboard Categories

Top Contributors

  • Most suggestions submitted
  • Most suggestions accepted
  • Suggestion acceptance rate

Most Engaged

  • Most likes given
  • Most comments posted
  • Most active days (login streak)

Community Leaders

  • Longest account age
  • Most diverse engagement (suggestions + likes + comments)
  • Highest achievement count

Implementation Details

API Endpoints

  • GET /api/leaderboard/suggestions - Top users by suggestions
  • GET /api/leaderboard/likes - Top users by likes
  • GET /api/leaderboard/comments - Top users by comments
  • GET /api/leaderboard/overall - Combined ranking

Database Queries

  • Aggregate user statistics from suggestions, likes, and comments tables
  • Cache leaderboard data (update every hour or daily)
  • Consider adding user statistics table for performance

Frontend Display

  • Create /leaderboard route
  • Display top 10/25/50 users per category
  • Show user avatar, username, badges, and stats
  • Add tabs for different leaderboard categories
  • Highlight current user's position
  • Add "View Profile" links to each user

Privacy Considerations

  • Allow users to opt-out of leaderboards
  • Only show public profile information
  • Consider hiding exact numbers (show ranks only)

Gamification Elements

  • Add medals/icons for top 3 positions (🥇🥈🥉)
  • Highlight "Most Improved" users (biggest jump in rankings)
  • Add "This Month" and "All Time" time filters

This issue was created with help from Hikari~ 🌸

### Attestations - [x] I have read and agree to the [Code of Conduct](https://docs.nhcarrigan.com/community/coc/) - [x] I have read and agree to the [Community Guidelines](https://docs.nhcarrigan.com/community/guide/). - [x] I have confirmed that the issue I am opening is unique, and has not already been reported (whether closed or not). - [x] I have reviewed the [Security Policy](https://docs.nhcarrigan.com/legal/security/) and have determined that this is not a security vulnerability. - [x] This is not a feature request or bug report that I am mis-filing to avoid the issue template. ### Share your thoughts: Create a leaderboard page to showcase the most active and engaged users in the library community. ## Leaderboard Categories ### Top Contributors - Most suggestions submitted - Most suggestions accepted - Suggestion acceptance rate ### Most Engaged - Most likes given - Most comments posted - Most active days (login streak) ### Community Leaders - Longest account age - Most diverse engagement (suggestions + likes + comments) - Highest achievement count ## Implementation Details ### API Endpoints - `GET /api/leaderboard/suggestions` - Top users by suggestions - `GET /api/leaderboard/likes` - Top users by likes - `GET /api/leaderboard/comments` - Top users by comments - `GET /api/leaderboard/overall` - Combined ranking ### Database Queries - Aggregate user statistics from suggestions, likes, and comments tables - Cache leaderboard data (update every hour or daily) - Consider adding user statistics table for performance ### Frontend Display - Create `/leaderboard` route - Display top 10/25/50 users per category - Show user avatar, username, badges, and stats - Add tabs for different leaderboard categories - Highlight current user's position - Add "View Profile" links to each user ## Privacy Considerations - Allow users to opt-out of leaderboards - Only show public profile information - Consider hiding exact numbers (show ranks only) ## Gamification Elements - Add medals/icons for top 3 positions (🥇🥈🥉) - Highlight "Most Improved" users (biggest jump in rankings) - Add "This Month" and "All Time" time filters ✨ This issue was created with help from Hikari~ 🌸
naomi closed this issue 2026-02-20 01:51:25 -08:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: nhcarrigan/library#55