I made caura, a cross-platform sysfetch in Go — my first real project
Posted by lizardev@reddit | learnprogramming | View on Reddit | 2 comments
Hi everyone!
I want to share caura, a system information tool (sysfetch) written in Go. It runs on Linux and FreeBSD (amd64 and 386).
How it started: I was using fastfetch and wondered how it worked internally. I assumed it used uname -r for the kernel and similar commands for everything else, so I tried to do the same. I made a tiny version that just ran commands and formatted the output. Then I started researching what those commands actually did, found out about reading processes directly (/proc, sysctl, etc.), and gradually implemented everything natively.
The project is less than a week old.
Features:
- Shows OS, Kernel, Uptime, Shell, Terminal, IP
- Shows Host, CPU, GPU, Architecture, Disk, RAM, Swap
- No external dependencies — just download the binary and run it
- Binaries available for Linux and FreeBSD
- Shared code between platforms
Coming up:
- TOML config file to customize the output
- ASCII logo from a .txt file
- Render a .png image as logo
- Android and macOS support
- The goal is to keep growing the project little by little until it reaches a solid and robust 1.0 release — hopefully with help from the community
About me: I haven't been programming for long — I started around February this year and I'm still learning. This is my first real project while learning Go. I wrote about 90% of the code myself; I used AI mainly as support for commits, README, pushes, and certain parts of some functions. I really enjoyed the language and wanted to share what I've been building while learning.
If anyone wants to contribute, report bugs, or suggest improvements, you're welcome. I'd really appreciate it if you took a look and gave me feedback, or even collaborated on the project.
Repo: github.com/soylizardev/caura (https://github.com/soylizardev/caura)
Thanks for reading :D
Commercial-Deal-834@reddit
finishing and sharing a project is already an achievement on its own a lot of people start projects, but getting something usable out the door teaches a completely different set of skills
Key_Use_8361@reddit
finishing and releasing a tool is a bigger achievement than most people give themselves credit for a lot of projects get started, but getting something usable into other people's hands is a completely different step