← Back

Building syswaifu: When System Tools Meet Anime

January 10, 2026

I've always been fascinated by terminal tools like neofetch. There's something satisfying about seeing your system information displayed in a clean, aesthetic way right in your terminal. But I wanted to add my own twist to it.

What if instead of just displaying system stats, the tool could also show you a random anime waifu? Thus, syswaifu was born.

The Concept

syswaifu is a cross-platform system information fetcher that combines the utility of tools like neofetch with the aesthetic of anime artwork. Every time you run it, you get your system information alongside a randomly fetched waifu image directly in your terminal.

It was actually a side project of another tool I built called AnimeWaifu, but it quickly became its own thing.

The Technical Challenge

The interesting part wasn't just fetching system information. It was making it work consistently across Windows, macOS, and Linux. Each operating system has its own way of exposing system data.

For GPU detection, Windows uses WMIC, macOS uses system_profiler, and Linux relies on lspci. Screen resolution? WMIC on Windows, system_profiler on macOS, xrandr or xdpyinfo on Linux. WiFi information? netsh, networksetup, and iwgetid/nmcli respectively.

I had to write platform-specific detection logic that would gracefully degrade to "Unknown" or "Not connected" if the necessary tools weren't available. The goal was to make it just work, regardless of where you run it.

Package Manager Detection

One feature I'm particularly proud of is automatic package manager detection. syswaifu can detect installed packages from multiple package managers across different platforms:

On Windows, it checks Chocolatey, Scoop, Winget, and npm. On macOS, it looks for Homebrew, MacPorts, and npm. On Linux, it scans apt, pacman, rpm, flatpak, snap, and npm.

This gives you a complete picture of your system's software ecosystem, not just packages from one manager.

Why JavaScript?

I built syswaifu entirely in JavaScript using Node.js. Some might question this choice for a system tool, but it made sense for several reasons. JavaScript is genuinely cross-platform, npm makes distribution trivial, and the async nature of Node.js is perfect for fetching images and system information concurrently.

Plus, I could leverage the entire npm ecosystem for things like making API calls and processing system commands.

Installation and Usage

Getting started is simple. Just run npm install -g syswaifu and you're ready to go. Then type syswaifu in your terminal and watch the magic happen.

The tool displays your OS, kernel, uptime, hostname, CPU, GPU, memory usage, disk usage, battery status, screen resolution, and WiFi connection, all alongside a beautiful waifu image fetched from an anime API.

Open Source

Like all my projects, syswaifu is open source and available on GitHub under the MIT license. If you find bugs, have feature requests, or just want to see how it works under the hood, the code is there for you.

It's been fun seeing people use it and customize it for their own setups. Some have even contributed improvements and bug fixes, which is what open source is all about.

What I Learned

This project taught me a lot about cross-platform development, working with system APIs, and handling edge cases gracefully. Every operating system has its quirks, and building something that works reliably across all of them requires careful testing and fallback strategies.

More importantly, it taught me that even utility tools can have personality. Just because something is functional doesn't mean it can't also be fun and aesthetic.

The code is on GitHub, and it's available on npm for anyone to install and use. Feel free to check it out, star the repo, or even contribute if you have ideas for improvements.

Under MIT License by Ovi ren