pivattogui/fetchr
Fetchr renders configurable ASCII system info in your terminal.
fetchr is a Zig-based system fetcher that prints a customizable ASCII art block and a list of system facts side-by-side. Layout, colors, and the art itself are driven entirely by a JSON configuration file, so you can style the output to match your shell or terminal theme.
~/.config/fetchr/config.json or a custom path via --config.{{user}} or {{mem_total}} inside label/value strings.--no-color to disable ANSI codes for monochrome output.zig build
This produces zig-out/bin/fetchr.
zig build run --
zig build run -- --config path/to/config.json
zig build run -- --no-color
If no --config flag is provided, fetchr looks for ~/.config/fetchr/config.json. When that file is missing or unreadable, a baked-in default configuration is used.
See .config/fetchr/config.json in this repository for a ready-to-copy template. Key fields include:
art.type: optional; if present it must be "ascii".art.source: the multi-line ASCII art string.art.tint_color: an ANSI color name (cyan, bright_magenta, etc.).layout.separator: string printed between art and info columns.layout.art_min_width: minimum width reserved for the art column.info_lines: array of label/value definitions with placeholders and colors.Placeholders correspond to fields collected by SysInfo (e.g. {{kernel}}, {{uptime}}). Unrecognized placeholders remain untouched.
Feel free to fork, extend, and share your own fetchr themes!