Fastfetch: The Blazing Fast Neofetch Alternative Written in C
If you've ever run neofetch to show off your system specs in a terminal screenshot, you know the pain of waiting a second or two for it to load. For something that's mostly cosmetic, that latency feels unnecessary. Enter Fastfetch — a system information tool that does everything neofetch does, but faster.
Written in C instead of bash or Python, Fastfetch is built for speed. It grabs your distro, kernel, CPU, GPU, memory, disk usage, and more, then displays it in a clean, customizable format. And it does it in milliseconds, not seconds.
What It Does
Fastfetch pulls system information from your Linux, macOS, BSD, or Windows machine and prints it in a terminal with an ASCII logo (or other logos) beside it. It supports the same kind of customization as neofetch: you can toggle which modules to show, change colors, pick logos, and even output JSON or XML for scripting.
Under the hood, it uses libpci, libdrm, libx11 (on Linux), and other native libraries to gather data directly from the system, rather than parsing command output or shell scripts. That's why it's fast.
Why It's Cool
- Speed. It's not just "fast for a system info tool." It's objectively fast. On modern hardware, it runs in under 10ms. That's faster than a blink.
- Cross-platform. Linux, macOS, Windows, BSD. One binary works everywhere.
- No dependencies at runtime. You just download a statically linked binary and run it. No Python, no bash, no weird shell script chains.
- Rich customization. You can enable/disable modules (like
CPU,GPU,Memory,Disk,Terminal,DE,WM, etc.), set colors per module, use custom logos, and even change the separator between the logo and the info. - Output formats. Need machine-readable output? Use
--format jsonor--format xml. Great for dashboards or scripts. - Continuously maintained. The project has frequent updates with new features, bug fixes, and support for newer hardware.
A nice touch: you can even pass --logo-type small to show a smaller ASCII logo, which looks cleaner in thinner terminals.
How to Try It
Getting started is simple. You can install via your package manager if available:
# Linux (Arch/Manjaro)
sudo pacman -S fastfetch
# macOS (Homebrew)
brew install fastfetch
# Windows (Scoop)
scoop install fastfetch
Or grab a prebuilt binary from the releases page.
Once installed, just run:
fastfetch
That's it. You'll see your system info pop up instantly. To customize, try:
fastfetch --help
or use a config file at ~/.config/fastfetch/config.jsonc.
Final Thoughts
Fastfetch is one of those tools that makes you wonder why you put up with the old way for so long. It's not revolutionary — it's a better version of an existing idea. But sometimes that's exactly what you need. If you're a dev who likes clean, fast terminal tools, give it a shot. It'll probably replace neofetch in your dotfiles immediately.
And hey, if you ever need to show your system specs in a PR or issue report, Fastfetch with --format json makes that trivial. That alone is worth the download.
Found this useful? @githubprojects shares dev tools like this regularly.