Skip to content

xerneas3318/hackfetch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hackfetch

A Hack Club themed system fetch with live Hackatime stats. Shows your system info next to a customizable Hack Club logo, plus your today/weekly hours, top project, top language, streak, and more - all from your terminal.

Built for Stardance

hackfetch stardance ocean


Install

Linux + macOS

curl -fsSL https://raw.githubusercontent.com/xerneas3318/hackfetch/main/install.sh | sh

Works on any major distro (Ubuntu, Debian, Fedora, RHEL, CentOS, Arch, openSUSE, Alpine) and macOS. The installer:

  • detects your OS/arch (Linux x86_64/arm64, macOS Intel/Apple Silicon)
  • auto-installs prereqs (curl, tar, xdg-utils) via your system's package manager (apt, dnf, yum, pacman, zypper, apk, or brew)
  • downloads the matching pre-built binary from GitHub Releases
  • installs to /usr/local/bin (using sudo if needed) or falls back to ~/.local/bin
  • is POSIX sh-compatible, so it works on Alpine/BusyBox and minimal containers too

Override the install location:

HACKFETCH_INSTALL_DIR=~/.local/bin curl -fsSL https://raw.githubusercontent.com/xerneas3318/hackfetch/main/install.sh | sh

Windows (PowerShell)

irm https://raw.githubusercontent.com/xerneas3318/hackfetch/main/install.ps1 | iex

Works on Windows 10 / 11 (x64 and ARM64). The installer:

  • detects your CPU arch
  • downloads the matching hackfetch-windows-<arch>.zip from GitHub Releases
  • installs hackfetch.exe to %LOCALAPPDATA%\Programs\hackfetch
  • adds that folder to your user PATH (open a new terminal to pick it up)

Override the install location:

$env:HACKFETCH_INSTALL_DIR = 'C:\tools\hackfetch'
irm https://raw.githubusercontent.com/xerneas3318/hackfetch/main/install.ps1 | iex

Homebrew (macOS + Linuxbrew)

brew tap xerneas3318/tap
brew install hackfetch

Go (any platform with Go installed)

go install github.com/xerneas3318/hackfetch@latest

Setup

hackfetch reads ~/.wakatime.cfg. If you don't have one yet, run Hack Club's official Hackatime setup:

curl -fsSL https://raw.githubusercontent.com/hackclub/hackatime-setup/main/install.sh | bash

Or run hackfetch -setup and follow the prompt - it'll walk you through opening hackatime.hackclub.com/my/wakatime_setup and waiting for the config to be written.


Usage

hackfetch                              # defaults
hackfetch stardance rainbow            # positional shorthand
hackfetch logo flag color pride        # keyword form
hackfetch -logo orpheus -color ocean   # flag form
hackfetch -v                           # verbose: + top editor, top category
hackfetch -watch                       # live mode, refreshes every 30s
hackfetch -export card.svg             # save the fetch as a shareable SVG card
hackfetch -list                        # show all logos and colors
hackfetch -h                           # help
hackfetch -setup                       # (re-)configure hackatime
hackfetch -no-net                      # offline mode

Tip: flags go before positional args. hackfetch -export card.svg stardance pride works; hackfetch stardance pride -export card.svg doesn't.

Set defaults

Add to your ~/.zshrc or ~/.bashrc:

export HACKFETCH_LOGO=stardance
export HACKFETCH_COLOR=rainbow
export HACKFETCH_VERBOSE=1

Gallery

hackclub forest
hackfetch forest
hackclub trans
hackfetch trans
rocket
hackfetch rocket
flag sunset
hackfetch flag sunset
bot matrix
hackfetch bot matrix
stardance ocean
hackfetch stardance ocean

Logos

hackclub   stardance   flag   orpheus   bot   rocket

Color schemes

Basics: hackclub   orange   mono   mute   matrix

Gradients & rainbows: rainbow   sunset   ocean   forest   stardance

Pride flags: pride   trans   bi   pan

Special: auto (defaults to pride in June, hackclub otherwise)

Run hackfetch -list for the full set.


Live mode

hackfetch -watch

Re-fetches your Hackatime stats every 30 seconds and redraws in place. Today's hours tick up as you code. Ctrl+C to quit.

Share your fetch

Export the current fetch as a shareable SVG card:

hackfetch -export card.svg
hackfetch -export card.svg stardance pride
hackfetch -export card.svg -logo orpheus -color rainbow

The output is an SVG with rounded corners, monospace font, and matching colors - perfect for tweeting, posting on Slack, or dropping into a devlog. Open in a browser to view, or convert to PNG with rsvg-convert or any image editor.


Custom themes

Define your own color schemes in ~/.config/hackfetch/colors.json:

{
  "schemes": {
    "vaporwave": {
      "colors": [199, 165, 99, 51],
      "mode": "per-line"
    },
    "fire": {
      "colors": [196, 202, 208, 214, 220, 226],
      "mode": "per-char"
    }
  }
}

mode can be single, per-line, or per-char. colors are ANSI 256 color codes. Your themes override built-ins of the same name.

Then run:

hackfetch -color vaporwave

What you get from Hackatime

When your ~/.wakatime.cfg points at a working Hackatime account, hackfetch fetches and shows:

  • today - hours coded today
  • 7-day total - hours coded over the past week
  • streak - consecutive days with activity
  • stardust ✦ - your stardust count (set via HACKFETCH_STARDUST=N env var)
  • stardance - days left until Stardance ends (auto-hides after Sep 30, 2026)
  • slack - your Hack Club / Hackatime handle
  • top project / project - most-worked project (today and weekly)
  • top lang / language - most-used language (with smart fallback: when Hackatime reports unknown, hackfetch infers from file extensions in your heartbeat history and labels it (inferred))
  • machines - when you've coded on more than one machine in the past 7 days
  • top editor / editor used - (verbose) most-used editor (-v)
  • top category / category - (verbose) coding / debugging / building / etc. (-v)

Links

  • Stardance - the Hack Club hackathon this was built for
  • Hackatime - Hack Club's WakaTime-compatible backend
  • Hack Club - the worldwide community of teen hackers
  • nFetch - fast, dependency-free Go system-fetch that inspired the architecture here
  • neofetch - the original genre-defining fetch (now archived)

License

MIT

About

Hack Club themed system fetch with live Hackatime stats. Built for Stardance.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors