I built an image viewer for the terminal that works everywhere

3 FerkiHN 3 7/20/2025, 11:18:38 AM
While working in terminal environments (especially on servers or minimal systems), I often found myself wishing for a way to view images without launching a graphical interface.

I built this because I often work on ARM devices or inside TTY without any GUI — and I wanted a tool that just shows an image, no magic. Maybe someone else needs it too.

That’s how PIT was born — a lightweight PNG/JPEG viewer that renders directly in the terminal using ANSI escape codes. It supports scaling, panning, rotation, PNG transparency, and even 256/16-color modes. No external dependencies — just C and the standard library.

It runs on Linux, macOS, Windows, BSD, Termux, WSL — even on ARM, RISC-V, PowerPC. You can build a ~250KB binary and run it nearly anywhere.

GitHub: https://github.com/Ferki-git-creator/phono-in-terminal-image-viewer-rgb-c-textmode

Would love feedback on usability, code quality, or whether this kind of tool is worth evolving further.

Comments (3)

latexr · 3h ago
This brought me back to when I used to run Linux without a GUI. I remember using mplayer for videos then but don’t recall what I did for images. I don’t have a need for this project, but congrats on making it and on a clear README with instructions and relevant screenshots (rarer than it should be).

One thing is leaving me scratching my head. The names stands for “Phono in Terminal”, but what is “phono”?

FerkiHN · 3h ago
Thanks for the answer, I'm glad you like it. :)

Your observation is appropriate, I didn't notice the error in my project's output, apparently I accidentally put "Photo", wrote "Phono".

I know you don't need the project, but if you want, you can star my repository to support me.

latexr · 3h ago
> apparently I accidentally put "Photo", wrote "Phono"

I wondered if that could be the case. But then it’s in the repo name and the README, so I thought I was the one not understanding it.