Colour Glyphs: When a Picture Paints a Thousand Words | Peter Hughes
We've all heard the phrase: a picture paints a thousand words. But what if a picture could literally contain those words and more? Back in my earlier post, I shared an experiment I'd started called Colour Glyphs — a way of encoding data using coloured blocks instead of black and white squares. The idea was simple: what if machine-readable codes could be expressive, creative, and compact, not just functional? Since then, I've taken the concept through an MVP, added framing headers, even tested type-awareness, and now I've reached a natural conclusion point. This post wraps it all up. From Bytes to Colours Here's how it works: 1. Take any file — text, MP3, an ID, even a URL. 2. Split the bytes into smaller 4-bit units called nibbles. 3. Map each nibble to one of sixteen colours in a fixed palette. 4. Arrange them into a square grid with a quiet white border. 5. Export the result as an image. The decoder simply reverses the process, reading each colour back into nibbles and reassembling the original file. In short: data in, colour out. Painting With Structure: Frame Headers If we stopped here, the colours alone wouldn't be enough. How would a decoder know where the data starts and ends? What kind of content it is? Whether the data is intact? That's where frame headers come in. Think of them as the invisible brushstrokes that give the picture its meaning. Every Colour Glyph begins with a structured header containing: - Magic Bytes — Marks this as a Colour Glyph (CG) - Version — Which format version is in use - Type — What kind of data (text, URL, binary, etc.) - Length — Number of bytes in the payload - CRC32 — A checksum to ensure integrity - Payload — The file's actual data - Padding — Extra filler to square the grid Error Correction: The Next Layer of Paint Even with structure, a single smudge or blurred square could break decoding. The solution is Reed-Solomon error correction, the same method that keeps CDs, QR codes, and spacecraft signals usa...
peter.hughes.team