* feat(metadata): improve tags for common no-result searches
Adds tags for the most frequent icon searches that returned nothing in
the last 30 days of site search data (customer, job, checklist, docs,
sell, invite, csv, budget, install, deploy, 404, ...).
Groups:
- Extend `user`, `check`, `x`, `exclamation-mark`, `question-mark`,
`chart`, `code`, `search` and `exit` with missing synonyms.
- Add `face` group for the `face-*` icons (emoji, emotion, mood,
feeling, expression, reaction).
- Add `dashed` group for icons drawn with a dashed outline, so
"dotted" finds them.
- Use `$group:exit` on the diagonal `*-exit` arrows and `$group:code`
on `terminal` and `square-terminal`.
Icons: add tags to ~100 icons for the top concept gaps, and drop
literals that a group or `$extends` now provides.
Replaying the top 3,000 no-result queries against this branch with the
site's Fuse settings: 173 queries (8,197 searches) now return results.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G9u8Feg8TihZv9E4BxmKpt
* feat(metadata): rename `face` group to `emoticon`, tag `eye` with "eyes"
"eyes" (187 no-result searches in 30 days) did not match the eye icons:
Fuse treats the extra "s" as a typo past its threshold.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01G9u8Feg8TihZv9E4BxmKpt
---------
Co-authored-by: Claude <noreply@anthropic.com>
* feat(icons): apply tag groups to variant icons
Add 23 groups for common variant suffixes and use them in 89 icons, removing
the literal tags a group now provides. No icon loses a resolved tag; 65
icons gain tags from their group.
Groups: alert, check, clock, code, cog, currency, dot, heart, key, lock,
off, pause, pen, percent, play, question-mark, search, slash, sparkles,
star, stop, sync, user.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Add favorite
* feat(icons): extend base icon metadata in variant icons
Use `$extends:<base>` in 703 variant icons whose tags or categories already
include every value of their base icon, and remove the 1952 tags and 1058
categories the base now provides. The base is the longest prefix of the icon
name that is an icon, e.g. `clipboard-pen-line` extends `clipboard-pen`.
- `tags` extend their base in 417 icons, `categories` in 675
- Only applied where the base adds nothing new, so the resolved tags and
categories of every icon are unchanged
- `contributors` are left as they are
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YBLsKpZMoKKKVeibcuRXnC
* Apply batched suggestions from code review
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Karsa <contact@karsa.org>
* Apply feedback
* Updated groups
* Apply updates
* Apply more extends and groups
* Stricter checks
* Remove more duplicates
* Update tags
* Apply batched suggestions from code review
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Fix tags
* fix(icons): clean up groups manually, added directional, positional groups & shield, sort groups
* fix(icons): clean up groups manually, added directional, positional groups & shield, sort groups
* fix(icons): clean up groups manually, added directional, positional groups & shield, sort groups
* Added checkmark
---------
Co-authored-by: Eric <eric.fennis@gmail.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(metadata): reusable tag groups with `$group:`
A `$group:<group-name>` marker in `tags` is replaced in place with the tags of
`groups/<group-name>.json`: a small set of tags for what a variant suffix
means, such as `-minus` → remove, delete.
- Read groups in `readGroups` and resolve markers next to `$extends:`,
failing on unknown groups and on `$group:` outside `tags`
- Add `group.schema.json` and lint, spell-check and format `groups/*.json`
- `pnpm checkIcons` also fails on literals a group already provides, and
warns about icons that list a group's tags by hand and unused groups
- Add the `minus`, `plus` and `x` groups and use them in
`alarm-clock-minus`, `file-minus`, `file-plus` and `file-x`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Fix group checker
* Apply batched suggestions from code review
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(metadata): reusable tag groups with `$group:`
A `$group:<group-name>` marker in `tags` is replaced in place with the tags of
`groups/<group-name>.json`: a small set of tags for what a variant suffix
means, such as `-minus` → remove, delete.
- Read groups in `readGroups` and resolve markers next to `$extends:`,
failing on unknown groups and on `$group:` outside `tags`
- Add `group.schema.json` and lint, spell-check and format `groups/*.json`
- `pnpm checkIcons` also fails on literals a group already provides, and
warns about icons that list a group's tags by hand and unused groups
- Add the `minus`, `plus` and `x` groups and use them in
`alarm-clock-minus`, `file-minus`, `file-plus` and `file-x`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Fix group checker
* Apply batched suggestions from code review
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(metadata): reusable tag groups with `$group:`
A `$group:<group-name>` marker in `tags` is replaced in place with the tags of
`groups/<group-name>.json`: a small set of tags for what a variant suffix
means, such as `-minus` → remove, delete.
- Read groups in `readGroups` and resolve markers next to `$extends:`,
failing on unknown groups and on `$group:` outside `tags`
- Add `group.schema.json` and lint, spell-check and format `groups/*.json`
- `pnpm checkIcons` also fails on literals a group already provides, and
warns about icons that list a group's tags by hand and unused groups
- Add the `minus`, `plus` and `x` groups and use them in
`alarm-clock-minus`, `file-minus`, `file-plus` and `file-x`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Fix group checker
* Apply batched suggestions from code review
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(metadata): reusable tag groups with `$group:`
A `$group:<group-name>` marker in `tags` is replaced in place with the tags of
`groups/<group-name>.json`: a small set of tags for what a variant suffix
means, such as `-minus` → remove, delete.
- Read groups in `readGroups` and resolve markers next to `$extends:`,
failing on unknown groups and on `$group:` outside `tags`
- Add `group.schema.json` and lint, spell-check and format `groups/*.json`
- `pnpm checkIcons` also fails on literals a group already provides, and
warns about icons that list a group's tags by hand and unused groups
- Add the `minus`, `plus` and `x` groups and use them in
`alarm-clock-minus`, `file-minus`, `file-plus` and `file-x`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Fix group checker
* Apply batched suggestions from code review
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>