We’re working on bringing Naji — the horse behind the name — home to Jacksonville.Bringing Naji home to Jacksonville.Meet Naji

Blog · 3 posts, newest first

The changelog says what. This says why.

Notes on how this thing is built. Each post takes one decision, says what it cost, and shows the measurements behind it. The line-by-line version is on the Trail Log — this is the part that needed more than a line.

  1. v9.3Latest

    We spent a month taking the file apart. It got 556 lines longer.

    Code entropy, measured, and the ratchet that stops it. The cleanup was working and the file still grew, because features kept arriving. That part is inevitable: entropy is whack-a-mole and you do not win it. What helped was a number that is only allowed to move one way.

    engineering

  2. v8.85

    The hotel Wi-Fi died. The editor kept running.

    Why an image editor that does its work inside the tab keeps going when the Wi-Fi doesn't. The engine runs in a back room, the work is saved on the device, and the internet was only ever carrying the extras.

    engineering

  3. v8.32

    We moved the engine off the main thread. The pixels stayed put.

    How Image Horse moved its Rust engine into a back room without ever sending a frame across the wall, and why the obvious way to do it is impossible.

    engineering

The software these are about is free to try.

Everything described here runs in your own tab. There is no account to make and nothing is uploaded — open an image and the engine is already on your machine.