Skip to content

YoannDev90/Github-Trend

Repository files navigation

Github Trend

Github Trend is a desktop app built with Avalonia UI to browse GitHub trending repositories with a richer, card-based interface.

Features

  • Browse GitHub trending repositories by time range:
    • Daily
    • Weekly
    • Monthly
    • All time
  • Filter the trending list by programming language
  • Search available languages quickly
  • Open any repository in your default browser
  • Display a visual repository banner
  • Show the repository title and description
  • Show language, license, stars, forks, and last updated information
  • Display contributor avatars and a +X others badge
  • Show repository topics as badges

Screenshots

The first screenshot The second screenshot

Todo

  • Add a loading indicator while fetching data
  • Handle API rate limits and errors gracefully
  • Implement i18n support for multiple languages
  • Add a settings page for user preferences (e.g., theme, default time range)
  • Cache fetched data to reduce API calls and improve performance
  • Allow direct staring/watching of repositories from the app
  • Add a "Don't show this again" button on repository cards to hide unwanted repositories

Requirements

  • .NET 10 SDK
  • A desktop environment supported by Avalonia

Running the app

From the project root:

dotnet restore
dotnet run

Build

dotnet build

Project structure

  • MainWindow.axaml - main UI layout
  • MainWindow.axaml.cs - window behavior and repository opening action
  • ViewModels/ - view models and commands
  • Models/ - repository and contributor data models
  • Services/ - GitHub and colors data fetching services

Data sources

  • Trending repositories are fetched from:
    • https://githubtrending.lessx.xyz/trending
  • Language colors are fetched from:
    • https://raw.githubusercontent.com/ozh/github-colors/master/colors.json
  • Repository details, contributors, topics, and licenses are fetched from the GitHub API.

Notes

  • Repository banners are loaded from GitHub OpenGraph images.
  • Contributor avatars are loaded on demand from the GitHub API data.
  • The app is designed to combine a mobile-style visual layout with web-style repository details.

About

Do you like getting inspiration from community projects ? Then this project is for you !

Topics

Resources

License

Stars

Watchers

Forks

Contributors