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 ✦
curl -fsSL https://raw.githubusercontent.com/xerneas3318/hackfetch/main/install.sh | shWorks 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, orbrew) - downloads the matching pre-built binary from GitHub Releases
- installs to
/usr/local/bin(usingsudoif 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 | shirm https://raw.githubusercontent.com/xerneas3318/hackfetch/main/install.ps1 | iexWorks on Windows 10 / 11 (x64 and ARM64). The installer:
- detects your CPU arch
- downloads the matching
hackfetch-windows-<arch>.zipfrom GitHub Releases - installs
hackfetch.exeto%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 | iexbrew tap xerneas3318/tap
brew install hackfetchgo install github.com/xerneas3318/hackfetch@latesthackfetch 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 | bashOr 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.
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 modeTip: flags go before positional args.
hackfetch -export card.svg stardance prideworks;hackfetch stardance pride -export card.svgdoesn't.
Add to your ~/.zshrc or ~/.bashrc:
export HACKFETCH_LOGO=stardance
export HACKFETCH_COLOR=rainbow
export HACKFETCH_VERBOSE=1
![]() hackfetch forest
|
![]() hackfetch trans
|
![]() hackfetch rocket
|
![]() hackfetch flag sunset
|
![]() hackfetch bot matrix
|
![]() hackfetch stardance ocean
|
hackclub stardance flag orpheus bot rocket
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.
hackfetch -watchRe-fetches your Hackatime stats every 30 seconds and redraws in place. Today's hours tick up as you code. Ctrl+C to quit.
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 rainbowThe 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.
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 vaporwaveWhen 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=Nenv 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)
- 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)
MIT





