Pingy

A real-time ping visualizer that absolutely did not need to be this overengineered.

Pingy monitors multiple hosts at once and renders their latency history as smooth, interpolated curves on a 3D perspective graph. It is ping if ping went to art school, dropped out, and got really into the demoscene. The whole thing is 16 kilobytes.

16 KB Windows Zero CRT
Source on GitHub
Features

What it does.

Multi-target monitoring
Add any hostname or IP address and watch them all at once, each on its own worker thread.
3D perspective graph
Catmull-Rom spline interpolation with per-target Z-depth parallax. Your latency data deserves depth. Literally.
Live statistics
Current, average, minimum and maximum latency plus packet loss percentage per target, on O(1) running stats over a circular buffer.
Colour-coded latency
Green for good, yellow for tolerable, red for when your ISP is lying to you.
Responsive layout
Switches between a left sidebar in wide mode and a bottom sidebar in tall mode, and is per-monitor DPI aware.
Persistent config
Targets, timeout and TTL survive restarts, saved to JSON through a hand-written parser because there are no dependencies. At all.
Engineering

The absurd technical decisions.

None of this was necessary. That is stated up front in the source, and it is worth repeating here.

Zero CRT dependency
Who needs a C runtime when you can hand-roll memcpy like it is 1985? The CRT adds about 100KB and that was taken personally.
Custom containers
Bootleg Vec<T>, WStr and Str, because the STL is for people who value their time.
Polynomial trig
Approximations for sin, cos, tan and sqrt. The math library was too many kilobytes, so Taylor series it is.
Inline x86 assembly
For 64-bit division, because _aulldiv is not going to implement itself.
Crinkler as the linker
A demoscene compressing linker built for 4K intros. The executable needed to be smaller than a particularly ambitious JPEG, and it is.
Custom entry point
_entry() bypasses CRT init and loads ole32.dll manually via GetProcAddress.
~1000fps render loop
A Sleep(1) loop, so your ping graph runs smoother than most AAA games.
Your Data

It pings, and that is all.

Pingy sends ICMP echo requests to the hosts you tell it to watch, resolves their names over DNS, and draws the results. It has no telemetry, no analytics, no update check, and no account. Your target list lives in a local JSON file next to the executable.

It ships with Google DNS, Cloudflare, Quad9 and OpenDNS as defaults, on the grounds that those are the four horsemen of "is the internet working."

Get It

Build it.

Windows 10 or newer, Visual Studio Build Tools with the C++ workload, and a terminal with the developer environment loaded. Then run build.bat. That is the entire build process, and it produces a roughly 16KB standalone executable with no external dependencies.

Source on GitHub