* 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>
* feat(metadata): reuse metadata from a base icon with `$extends:`
Icon metadata can reference a base icon with an inline `$extends:<icon-name>`
marker in `tags`, `categories` or `contributors`. The marker is replaced in
place with the base icon's resolved values at build time.
- Resolve markers in `readAllMetadata` and `getIconMetaData`, failing on
unknown icons, self references and circular chains
- Accept markers in `icon.schema.json`
- `pnpm checkIcons` fails on duplicate markers and on literals a marker
already provides, and runs in CI
- Docs read the resolved metadata index instead of the raw icon JSON
- Use `$extends:alarm-clock` in `alarm-clock-minus`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* feat(metadata): reuse metadata from a base icon with `$extends:`
Icon metadata can reference a base icon with an inline `$extends:<icon-name>`
marker in `tags`, `categories` or `contributors`. The marker is replaced in
place with the base icon's resolved values at build time.
- Resolve markers in `readAllMetadata` and `getIconMetaData`, failing on
unknown icons, self references and circular chains
- Accept markers in `icon.schema.json`
- `pnpm checkIcons` fails on duplicate markers and on literals a marker
already provides, and runs in CI
- Docs read the resolved metadata index instead of the raw icon JSON
- Use `$extends:alarm-clock` in `alarm-clock-minus`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Fix comments
* Format code
* Update tools/build-helpers/src/resolveMetadataExtends.ts
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Fix resolving icon metadata
* feat(metadata): reuse metadata from a base icon with `$extends:`
Icon metadata can reference a base icon with an inline `$extends:<icon-name>`
marker in `tags`, `categories` or `contributors`. The marker is replaced in
place with the base icon's resolved values at build time.
- Resolve markers in `readAllMetadata` and `getIconMetaData`, failing on
unknown icons, self references and circular chains
- Accept markers in `icon.schema.json`
- `pnpm checkIcons` fails on duplicate markers and on literals a marker
already provides, and runs in CI
- Docs read the resolved metadata index instead of the raw icon JSON
- Use `$extends:alarm-clock` in `alarm-clock-minus`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Fix comments
* Format code
* Update tools/build-helpers/src/resolveMetadataExtends.ts
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Fix resolving icon metadata
* Fix comments
* Format code
* Update tools/build-helpers/src/resolveMetadataExtends.ts
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>
* fix(icons): align Unicode currency icon cap heights with other typographic icons
Also deprecates badge-, receipt- currency variants
* fix(icons): update riyal to be more in line with specifications
Rightmost lines evenly spaced, leftmost path somewhat lower than the currently matching line
* feat(icons): added letter icons for each uppercase letter of the English alphabet
* feat(icons): extend letter icons with specific use cases instead of generic ones
* feat(icons): replaced letter-z with more grid-aliged version
* feat(icons): add contributors from strikethrough to letter-s
* feat(icons): added square-letter-* & circle-letter-* icons
* feat(icons): manually optimized some icons
* fix(icons): deprecated circle-parking
* Rename import
* fix(icons): fix use case syntax for (circle|square)-letter icons
* fix(icons): added new Letters & digits category
* fix(icons): added numbers to new Letters & digits category
---------
Co-authored-by: Eric <eric.fennis@gmail.com>
* feat(icons): added letter icons for each uppercase letter of the English alphabet
* feat(icons): extend letter icons with specific use cases instead of generic ones
* feat(icons): replaced letter-z with more grid-aliged version
* feat(icons): add contributors from strikethrough to letter-s
* fix(icons): fix use case syntax for letter icons
* feat(icons): added `square-kanban-plus` icon
Adds square-kanban-plus for issue #4416.
Also updates emoji category icon reference after smile rename.
* chore(icons): expand square-kanban-plus metadata from PR suggestions
Apply curated tags, categories, and use-cases from automated
metadata review suggestions.
* Apply design from @jguddas
* Update contributors and use cases in square-kanban-plus.json
Added new contributors and updated use cases to improve clarity.
---------
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
* Added icons/earbuds.svg
* Added icons/earbuds.json
* Create earbuds-off.json icon schema
Added a JSON schema for earbuds-off icon with use cases, tags, and categories.
* Add earbuds-off.svg icon file
* Update use-cases and fix typo in earbuds-off.json
* Refine use-cases and correct tag spelling
Updated use-cases and tags for clarity and added communication category.
* Update use cases and categories in earbuds-off.json
* Update categories
---------
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
Rewrite non-empty use-cases in icon metadata to follow
.github/instructions/metadata.instructions.md: start with a capitalized
present participle, no trailing periods, roughly 4-12 words, no first
person, and variant-specific wording instead of copied lines.
Claude-Session: https://claude.ai/code/session_011ftUgp98e8VLgymjSb9qbQ
Co-authored-by: Claude <noreply@anthropic.com>
2026-10-27 14:55:29 +01:00
Eric Fennisgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Karsa
* feat(icons): add laser icon with metadata
* Update icons/laser.json
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Add more use cases and tags
* Update laser icon design
The laser design is according to @karsa-mistmere suggestion.
* Update laser icon design and its metadata
* Remove 'cursors' and 'devices' from categories
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
Co-authored-by: Karsa <contact@karsa.org>
* feat(icons): added dirham icon
* feat(icons): use letter-d geometry from karsa-mistmere for dirham
* Apply suggestion from @github-actions[bot]
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* feat(metadata): add full names to dirham tags as requested by maintainer
* fix(metadata): add required use-cases field to dirham.json
* Apply suggestion from @github-actions[bot]
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* Update and rename dirham.json to emirati-dirham.json
* Rename dirham.svg to emirati-dirham.svg
---------
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Karsa <contact@karsa.org>
* Rename music icons
* Make music icons more rounded
* Add more tags to music icons
* Add self-sttribution
* Update metadata
* Adding usecase
---------
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
* feat(icons): added `circle-fading-play` icon
Adds a play button in a fading circle, completing the circle-fading-*
family (circle-fading-plus, circle-fading-arrow-up). Useful for short
clips, highlights, stories/reels and video previews.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* chore(icons): add use-cases and tags to `circle-fading-play`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* chore(icons): credit contributors of base icons for `circle-fading-play`
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Update circle-fading-play.json
---------
Co-authored-by: tatianatsiguleva <324940161+tatianatsiguleva@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: Karsa <contact@karsa.org>
* fix(docs): rename notification category title to notifications
* feat(icons): add cross and x tags to circle-x
* Update icons/circle-x.json
---------
Co-authored-by: Karsa <contact@karsa.org>