Skip to content

feat: implement leaderboard system (Rust backend + Vue UI)#72

Open
CSDC-K wants to merge 1 commit intohackclub:mainfrom
CSDC-K:feature/leaderboard
Open

feat: implement leaderboard system (Rust backend + Vue UI)#72
CSDC-K wants to merge 1 commit intohackclub:mainfrom
CSDC-K:feature/leaderboard

Conversation

@CSDC-K
Copy link
Copy Markdown

@CSDC-K CSDC-K commented Mar 18, 2026

🚀 Feature: Leaderboard System

This PR implements a fully functional leaderboard for Hackatime Desktop.

✨ What it does

  • Fetches leaderboard data from the Hackatime website using Rust scraping
  • Parses:
    • Username
    • Avatar
    • Coding time (hours, minutes, seconds)
  • Exposes data via a Tauri command (get_leaderboard_data)
  • Adds a responsive Vue UI component for the leaderboard
    • Scrollable for large number of users
    • Fixed header for better UX
    • Loading state handled properly

🧠 Notes

  • Currently scraping the web page since no public API is available
  • Designed to be easily replaceable with an API if one becomes available
  • Handles avatar errors gracefully (fallback icon)
  • Styling matches the app’s 3D card design

📸 Preview

image

⚠️ Limitations

  • Depends on the current Hackatime HTML structure

@CSDC-K CSDC-K requested a review from LeafdTK as a code owner March 18, 2026 15:14
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.

1 participant