shipped@di-atomic/iconography · v0.1.0 · beta

Ships no icons. Tells you which one you may legally use.

Iconify already maintains 334,616 icons across 236 sets, so the catalogue is a solved commodity. What is written down nowhere is the contract around it: whether the licence permits this glyph in work a client pays for, whether it inherits your brand colour, what the target has to measure, and where it sits on a right-to-left page.

For anyone putting icons into a deliverable somebody pays for, and for anyone who cannot currently say whether the logo in that deck is licensed for the use they are making of it.

A chalkboard diagram: a stack of three white chalk rectangles labelled 334,616 ICONS, a white arrow, and a gold card carrying a question mark labelled MAY I SHIP IT?
Built by Di-Atomic Marketing & compliance agency Every set carries an SPDX id and the date it was checked Guidance-only, no credentials Clients incl. ONYX Radiance, Pamit Group
0UI glyphs that existed across 19 skills describing icon slots ~875 times
40/43slots resolving in Lucide, against 39 in Tabler and 24 in Phosphor, checked live
70of 236 icon sets carrying no licence URL at all, classed red until opened
4scripts that print numbers, one of which failed on this package’s own registry
Installopvs-skills install @di-atomic/iconography

Then say: “which icon for this section”, “can I use the Docker logo in this deck”, or “the icons here are emoji”.

Same question, two very different answers

“Find me a search icon” → a generic agent
returns an SVG path.

  <svg viewBox="0 0 24 24">
    <path d="M21 21l-4.35..."/>
  </svg>

where is it from?
what licence?
may a client page use it?

An improvised path is a coin flip, and it is the one part of a graphic where improvisation buys you nothing. Worse, you now have an asset in a paid deliverable whose provenance nobody can reconstruct.

“Find me a search icon” → this skill
returns a decision.

  token .... lucide:search
  resolves . checked live
  licence .. ISC   GREEN
  colour ... currentColor
  target ... 24px in 44px
  RTL ...... does not mirror

named, checked, defensible.

Every part of that is verifiable after the fact. The licence has an SPDX id and a URL that was opened, the token was resolved against the live set, and the contract numbers come from WCAG rather than from habit.

The catalogue was never the hard part. The hard part is being able to defend the icon after you shipped it, which is exactly the part no icon library covers.

The three rules doing most of the work

⚖️

The licence question is about END USE

The binding question is never may we redistribute this set. It is may this icon appear in a commercial client deliverable, and does anything have to print next to it. Non-commercial and share-alike terms are hard blocks because they bite exactly where we sit. Of 236 sets, 70 carry no licence URL at all and are red until someone opens one.

🔗

A token is a dependency, not a string

Lucide took help-circle to circle-help to circle-question-mark, and the oldest no longer resolves. Tabler kept all three. A dead token throws no build error, logs no warning and goes nowhere near a red mark in review. It renders nothing at all, so every token is resolve-checked live against the set it claims to come from.

🏷

CC0 licences the drawing, never the mark

Simple Icons ships thousands of company logos under CC0, which is about as permissive as licensing gets. It still does not licence the trademark, because a trademark is not handed over by whoever drew the SVG. Brand marks are gated separately and every use asserts a permitted-use category rather than assuming one.

Two measurements people routinely collapse into one

A small white chalk magnifier labelled 16px GLYPH sitting inside a much larger gold chalk square labelled 44px TARGET
The glyph is not the target. A 16 pixel glyph is fine. A 16 pixel tap target is not. And the contrast figure is 3:1 under WCAG 2.2, not the 4.5:1 people carry over from the text rule.
Two chalk text lines, the upper with a gold arrow at its right end labelled LTR, the lower with a gold arrow at its left end labelled RTL
The rule we own outright. In Hebrew or Arabic a directional icon moves to the logical right in source order and mirrors. I surveyed 236 sets and the big four’s documentation and found it written down nowhere.

What the four questions look like on a real deliverable

> "which icon for the search field on this Linear-style page"

  WHICH KIND ... UI glyph, so continue
                 a 256px product mark goes to media-generator

  WHICH SET .... read the design system's own icon contract
                 no system named? ask. There is no house set.

  WHICH TOKEN .. registry/slot-search/slot.json
                 lucide: search  |  tabler: search
                 ph: magnifying-glass

  RESOLVES? .... checked live against the set   non-negotiable

  LICENCE? ..... lucide ISC   GREEN for paid client work
                 not MIT, which a round-up blog claimed

  CONTRACT? .... currentColor | 3:1 non-text | 24px in a 44px zone
                 radius 50% only | mirrors in RTL? search does not

The step people skip is the resolve check, because a wrong token looks exactly like a right one in a diff. The step people get wrong is the contrast figure. And there is no house set on purpose: of 150 design systems, one forbids fill-based icons in the chrome while another demands filled and rounded, so a single spine set is wrong on one of them by construction.

Where it stops

It decides and specifies. It does not bind a label to an icon at render time.

iconography is one skill in the system behind Di-Atomic, the marketing and compliance agency that runs cognitoAI, SpiderIQ and OPVS. It settles which icons exist and what they cost you legally; a graphic that binds the wrong label to the right icon is a different defect with a different fix, and I am not going to pretend otherwise. If you want icons that survive a licence question in any of our seven languages, including right-to-left, that is the day job.

Book a 30-min call with Di-Atomic

Just want the skill? Get @di-atomic/iconography free.