An AI model for icons.
Describe an icon. Get an editable SVG in the Blode style.
About this model
Model card
Every number links to its receipt. Gaps are marked.
- Family
- blode-icons, 4,357 drawings, 12 pinned anchorspublic librarySOURCE.jsonrevision.json
- Checks
- 17 rules, exact replay; only compiler output reaches the pageThe checks constrain geometry. They do not establish that an icon reads as the right object.public librarytoolsstyle.ts
- House yardstick
- blode-icons passes its own strict spec 40.9% of the time (gate 99.0%)The set fails its own strict reading; a generator is not held to 1.0. Re-derived from the vendored library with the current linter.public librarypublic-conformance.v1.json
- Against other stroke packs
- house strict 33.8% vs tabler 22.3%; pooled floor of 4 packs 20.3%Measured on the private store with the August linter; the third-party packs are not vendored and cannot be re-measured here.private store2026-08-19calibration.v1.json
- Generated, development set
- 10/10 gate, 4/10 strict after repair; 7/10 review-clear first pass; median 260 s per concept pairn=10, 24px, repaired outputs, root visual review. Development yield, not a craft score; qualification false in the receipt.generated, n=102026-09-09validation.jsonvalidation.json
- Off-axis edges
- 29.1% of stroked house icons carry one (480 of 1,649)Off-axis edges are the set's own habit, so the canvas permits them by name and the linter warns rather than errors.public librarypublic-conformance.v1.jsonlint.ts
- Instruments
- style similarity (facebook/dino-vitb8) discarded at AUC 0.476; rendered cosine AUC 0.864; judge gate claude-haiku-4.5 83% (discarded), claude-sonnet-4.5 93%, gemini-3.5-flash 100%, gemini-3.7-flash 100%Published because a metric that failed is evidence too. Judge accuracy is a forced choice between a shipped icon and an unrelated one, n=30 per model.private store2026-08-19calibration.v1.jsonstress-cosine.v1.json
- Benchmark
- not yet runFilled from the newest live receipt under packages/iconsmith/bench/runs once one exists (scripts/icon-bench.ts). Sandbox runs are not scores.generated, n=10icon-bench.ts
- Cost and latency per draw
- not yet measuredFilled from docs/log/web-draws-*.json once 100 metered draws are on file. No estimate stands in for the measurement.this pagelog
Use it
In your coding agent
Installs the public skill. In Claude Code: claude plugin marketplace add mblode/iconsmith, then claude plugin install iconsmith@iconsmith. Test keys are sandboxed; live keys spend credit.
npx skills add mblode/iconsmith --skill iconsmithOver HTTP
The route this page calls. Send a prompt, concept or images; add stream: true to stream.
curl https://blode.co/iconsmith/api/v1/icons \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ism_test_00000000000000000000000000000000' \
-d '{
"concept": "bookmark-check",
"cut": {
"finish": "outlined",
"radius": 3,
"size": 24,
"stroke": 2
},
"model": "iconsmith-1",
"n": 2
}'