SealFont sealSealFont ← Journal
Journal · Behind the Build

I Built a Non-AI Seal Engine. With AI.

8 min read

Last week I flipped a switch. Every seal on SealFont — every impression you generate when you type your name — stopped being made by an AI image model, and started being drawn by a geometry engine I built myself.

Here's the strange part: I built that engine with AI. AI designed alongside me, wrote code alongside me, argued with me at 2 a.m. So this is not one of those "I quit AI" posts. It's the opposite. It's about knowing which half of the work AI should do — and which half it absolutely shouldn't.

A round vermilion seal impression on washi paper, its right half dissolving into fine gold engineering construction lines and measurement arcs.
An impression on the left, the engineering drawing beneath it on the right — the whole idea of SealFont in one frame.

It started with a friend who wanted a hanko

Years ago, a friend from the U.S. visited Japan and fell in love with hanko — the personal seals we press in vermilion ink instead of signing. He wanted one of his own. His options were dismal: transliterate his name into katakana he couldn't read, adopt kanji that looked beautiful but weren't legally his name, or settle for his alphabet stamped in a plain font — legible, registrable, and utterly without soul.

Readable. Registrable. Actually a seal. He could have any twonobody offered all three.

That gap stayed with me for years. SealFont is my answer to it: your name, in the Latin alphabet, composed in the manner of kissō-tai (吉相体) — also called insō-tai — the auspicious style traditionally chosen for a person's most important seal.

The AI image generation era — and why I walked away

The first working version of SealFont used a state-of-the-art image model. I'd feed it a geometric draft and it would render a seal with genuinely beautiful texture. For a while it felt like magic.

Then the cracks appeared, and they were structural, not cosmetic:

Names quietly became other names. Image models don't draw letters; they hallucinate letter-like shapes. A long name would come back subtly wrong — a stroke missing here, a letter melted there. For decoration, fine. For the mark that stands in for your legal name, unacceptable.

Nothing was controllable. I couldn't tell the model "keep every letter legible, connect these strokes to the rim, hold this density." I could only ask nicely and reroll. A craft is not a slot machine.

Every seal cost money. A few cents per image sounds small until you want to let the whole world generate freely. The meter was a wall between the product and the people it was for.

And one more thing that mattered more than all of the above: a seal is supposed to be one of one. A probabilistic image model can't promise that. It can't even explain how it arrived at what it drew.

The question that unlocked it

The turning point was embarrassingly simple. One night I asked: we can produce precision 3D blueprints for machines — why can't we produce a seal?

Because a seal impression isn't a picture. It's a drawing — an engineering drawing. Lines with positions. Arcs with radii. Junctions that meet the rim at chosen points. The moment I reframed it that way, the path was obvious: stop generating images, start composing geometry.

Learning to read seals before teaching a machine to draw them

You can't encode what you haven't understood. So before writing the engine, I went back to the source material: real seal impressions, classical seal-script references, the composition principles carvers have argued about for centuries — how strokes should occupy space, where lines may touch the rim, how density is balanced across the face.

An ink-wash illustration of a craftsman hunched over a small precision engraving machine, a large red sun behind him and a plum branch to the side.
Before teaching a machine to draw seals — learning to read them.

None of this was about luck or fortune-telling. It was about form — the visual grammar that makes a seal read as a seal at a glance. I studied it the way you'd study a foreign script: not to imitate any single specimen, but to extract the rules underneath, translated into terms a machine could execute — lines, arcs, curves, and the relationships between them.

There were plenty of dead ends. Early attempts traced letterforms as clouds of points, and the results wobbled like a child's handwriting. Attempts to fill space by mechanically duplicating elements destroyed the letters they were meant to enrich. Each failure taught the same lesson: fix the starting representation, not the symptoms downstream.

And at every step, human eyes were the gate. Machine metrics said "pass" many times when the actual image, viewed by an actual person, said "not yet." A calligraphy expert's review humbled the numbers more than once. The final judge of a seal is not a score. It's a gaze.

So where does the "with AI" part come in?

Everywhere except the seal itself.

I'm a solo founder. My teammates were AI systems: one that helped me think through architecture, strategy, and every word on the site; another that wrote and refactored the actual code, ran verification suites, and deployed to production. The division of labor was strict and, I think, the entire point of this story:

Computationally composed — designed by algorithm, one of one. Not AI-generated imagery. — printed on every seal.

Both halves of that sentence are true, and both halves matter. The imagery is not AI-generated. The company, in a real sense, is AI-accelerated. I see no contradiction — only an honest account of what each kind of intelligence is good for.

A single human eye in sumi ink beside a small vermilion seal held in golden calipers, with faint rejected draft seals marked out below.
Metrics said pass. The eye said not yet.

What geometry made possible

Walking away from image generation didn't just fix the problems. It opened doors that a probabilistic model could never open:

True one-of-one. Every seal is composed from cryptographic randomness. The same name never produces the same seal twice, and no two seals are ever coordinate-identical. Its composition is recorded once, under a serial number, on a ledger — which is what the Certificate of Composition actually certifies.

Real vector output. Because the seal is geometry, we can hand you the actual engraving data — AI, EPS and SVG files, impression and mirrored carving face — the formats seal workshops in Japan actually accept. Not a tracing of a picture. The blueprint itself.

Free means free. The marginal cost of a seal is now zero. So generation is unlimited, watermark-free, no login. Type every name you can think of.

There's a quiet historical rhyme here, too. Japanese municipal regulations on registered seals consistently reject mass-produced identical stamps — the whole system assumes a seal should be singular. A deterministic engine with cryptographic uniqueness isn't fighting that tradition. It's the same idea, rebuilt in code.

Why it's free

Because the style is the point. Kissō-tai for the Latin alphabet didn't exist; now it does, and a script only becomes real when people use it — on profiles, in signatures, pressed onto paper. So the seals are free to create and free to use, as many as you like. If you ever want yours made physical — engraved into a real hanko — the engraving data and its certificate are there.

A round vermilion seal freshly pressed onto washi, the stamp lifting away at an angle, a faint eight-pointed gold compass radiating from beneath the impression.
One of one — pressed once, recorded once.

Type a name and watch it become a seal

Turn your name into a personal signet, composed in the seal-script tradition by a deterministic geometry engine — one of one, free to create and free to use, with the engraving data ready when you want it made physical.

Create yours →

Keep reading: What Is Seal Script? for the writing the engine had to learn, or Does a Japanese Seal Really Bring Good Luck? on the eight directions. Or browse the Journal.