PitchHut logo
A stylish CLI tool for viewing Git hosting stats.
Pitch

gitfetch provides a neofetch-style interface for displaying GitHub, GitLab, Gitea, and more statistics. With its colorful terminal interface and extensive customization options, this cross-platform tool makes it easy to visualize profile contributions and stats across multiple git hosting services, all in one place.

Description

gitfetch is a command-line interface (CLI) tool designed to provide a neofetch-style display of profile statistics from popular Git hosting platforms such as GitHub, GitLab, Gitea, Forgejo, Codeberg, and Sourcehut. With gitfetch, users can easily showcase their contributions and performance metrics within a visually appealing and customizable terminal interface.

Key Features

  • Neofetch-Style Display: Offers a stylish output, complete with ASCII art for enhanced visual appeal.
  • Comprehensive Statistics: Aggregates statistics from multiple git hosting providers, providing a unified view of user contributions.
  • Smart Caching: Implements an SQLite-based caching system to speed up subsequent data fetches for a more efficient experience.
  • Cross-Platform Support: Compatible with both macOS and Linux, ensuring accessibility for a wide range of users.
  • Interactive Setup: Features a first-run initialization that guides users through provider selection and authentication.
  • Extensive Customization: Allows users to configure contribution characters, manage displayed sections, and employ advanced flags for tailored output.

Supported Platforms

  • GitHub: Utilizes GitHub CLI (gh) for user authentication.
  • GitLab: Integrates with GitLab CLI (glab) for seamless access.
  • Gitea, Forgejo, Codeberg: Supports personal access tokens for authentication.
  • Sourcehut: Also works with personal access tokens.

Usage Example

To fetch statistics using the default username from configuration:

gitfetch

For fetching user-specific statistics:

gitfetch username

And a repository-specific statistics request for the current local git repository:

gitfetch --local

Users have the flexibility to modify output dimensions, customize contribution graph aesthetics, and control which sections are visible in the output. For example, to change the contribution graph dimensions and hide date labels:

gitfetch --width 50 --height 5 --no-date

Automated Layout System

The intelligent layout system adapts the display based on terminal size, automatically selecting between full, compact, or minimal layouts to ensure optimal use of available space.

Overall, gitfetch provides a robust solution for showcasing Git contributions in a visually engaging manner, combining functionality and aesthetics for an improved user experience.

0 comments

No comments yet.

Sign in to be the first to comment.