Compare commits

..
37 Commits
Author SHA1 Message Date
Jamie LawandEric Fennis 7b0196e249 fix(icons): update music icons (#4072)
* 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>
2026-10-15 18:01:02 +02:00
Rodrigo RodriguesCopilot Autofix powered by AIgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Eric FennisKarsa
f771243961 feat(icons): added certificate icon (#4327)
* Added icons/certificate.svg

* Added icons/certificate.json

* Add use-cases for certificate JSON

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Apply suggestion from @github-actions[bot]

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update certificate.svg

apply changes as discussed with @ericfennis

---------

Co-authored-by: Eric Fennis <eric.fennis@gmail.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>
Co-authored-by: Karsa <contact@karsa.org>
2026-10-15 17:54:18 +02:00
Copilotericfenniscopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
26edd98bf1 ci(dev): fix "Generate PR Title" job by using REST API for changed files (#5017)
* Initial plan

* Apply remaining changes

Co-authored-by: ericfennis <11825403+ericfennis@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ericfennis <11825403+ericfennis@users.noreply.github.com>
2026-10-15 17:40:32 +02:00
KarsaandEric Fennis d98861db31 fix(icons): changed barrel icon (#4639)
* Updated icons/barrel.svg

* Updated icons/barrel.json

* Update barrel.json

* Updated icons/barrel.svg

* Updated icons/barrel.json

* Update barrel.json

* Update barrel.svg

* Update barrel.svg

---------

Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-15 17:30:00 +02:00
Copilotericfenniscopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>Eric Fennis
55e223a3a1 feat(ci): auto-generate PR titles from added file paths (#4790)
* feat(ci): auto-generate PR titles from added file paths

* refactor(ci): single source of truth for conventional commit types

* ci: skip PR title generation when "Keep PR title" label is present

Co-authored-by: ericfennis <11825403+ericfennis@users.noreply.github.com>

* refactor(ci): align package path scopes with package.json names

* Apply changes to generated pr titles

* Add .github/conventional-commit-types.json to gitignore

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ericfennis <11825403+ericfennis@users.noreply.github.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-15 17:17:01 +02:00
Eric Fennis 20fa6adf52 Fix homepage animation (#5015) 2026-10-15 17:04:20 +02:00
dependabot[bot]Claude Opus 5.5dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Eric Fennis
d672fc43db chore(deps-dev): bump the angular-deps group across 1 directory with 10 updates (#5004)
* chore(deps-dev): bump the angular-deps group across 1 directory with 10 updates

Bumps the angular-deps group with 10 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@angular/build](https://github.com/angular/angular-cli) | `22.2.1` | `22.2.2` |
| [@angular/cli](https://github.com/angular/angular-cli) | `22.2.1` | `22.2.2` |
| [@angular/common](https://github.com/angular/angular/tree/HEAD/packages/common) | `22.2.1` | `22.2.2` |
| [@angular/compiler](https://github.com/angular/angular/tree/HEAD/packages/compiler) | `22.2.1` | `22.2.2` |
| [@angular/compiler-cli](https://github.com/angular/angular/tree/HEAD/packages/compiler-cli) | `22.2.1` | `22.2.2` |
| [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) | `22.2.1` | `22.2.2` |
| [@angular/forms](https://github.com/angular/angular/tree/HEAD/packages/forms) | `22.2.1` | `22.2.2` |
| [@angular/platform-browser](https://github.com/angular/angular/tree/HEAD/packages/platform-browser) | `22.2.1` | `22.2.2` |
| [@angular/platform-server](https://github.com/angular/angular/tree/HEAD/packages/platform-server) | `22.2.1` | `22.2.2` |
| [@angular/router](https://github.com/angular/angular/tree/HEAD/packages/router) | `22.2.1` | `22.2.2` |



Updates `@angular/build` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/v22.2.1...v22.2.2)

Updates `@angular/cli` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular-cli/releases)
- [Changelog](https://github.com/angular/angular-cli/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular-cli/compare/v22.2.1...v22.2.2)

Updates `@angular/common` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/common)

Updates `@angular/compiler` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/compiler)

Updates `@angular/compiler-cli` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/compiler-cli)

Updates `@angular/core` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/core)

Updates `@angular/forms` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/forms)

Updates `@angular/platform-browser` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/platform-browser)

Updates `@angular/platform-server` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/platform-server)

Updates `@angular/router` from 22.2.1 to 22.2.2
- [Release notes](https://github.com/angular/angular/releases)
- [Commits](https://github.com/angular/angular/commits/v22.2.2/packages/router)

---
updated-dependencies:
- dependency-name: "@angular/build"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/cli"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/common"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/compiler"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/compiler-cli"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/core"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/forms"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/platform-browser"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/platform-server"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
- dependency-name: "@angular/router"
  dependency-version: 22.2.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: angular-deps
...

Signed-off-by: dependabot[bot] <support@github.com>

* fix(deps): regenerate lockfile to avoid duplicate vite/vitest instances

Dependabot's lockfile update pulled in vite@8.3.4 alongside vite@8.3.2,
creating extra vitest peer variants. Packages then loaded two vitest
instances, breaking jest-dom matcher types and snapshot state.
Regenerated from main's lockfile so only the Angular packages change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ND8yFLJKhXV6FMeZyvHzgS

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-14 13:47:24 +02:00
Eric FennisandClaude Opus 5.5 9904bc4649 chore(integration-tests): Add Svelte integration tests for @ucide/svelte (#5005)
* test(svelte): add Vite and SvelteKit integration fixtures

Scaffold a plain Svelte + Vite app (create-vite svelte-ts) and a SvelteKit
app (sv create --template minimal) that consume the built @lucide/svelte
package. Each fixture runs a production build, svelte-check and a Vitest
Browser Mode test, wired up via test:integrations:svelte and CI.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0198HmSjcE6LwPPScwLdMtjt

* test(svelte): label Pen as canonical and Edit2 as alias in fixtures

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0198HmSjcE6LwPPScwLdMtjt

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-10-14 13:46:40 +02:00
Stefan GründelandCopilot Autofix powered by AI 6bc1373b3f feat(docs): add third-party package lucide-jte (#5000)
* feat(docs): add third-party package lucide-jte

* Update Maven Central badge URL in packageData

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-14 08:58:38 +02:00
dab294f313 feat(icons): added perfume icon (#4426)
* Added icons/perfume.svg

* Added icons/perfume.json

* Updated icons/perfume.json

* Update perfume.json

Add use cases

* renamed and removed from lab

* removed from lab

* removed old renamed

* Update categories and use-cases in perfume-bottle.json

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Remove 'parfum' tag from icon

Removed 'parfum' tag from perfume bottle icon.

* Update perfume-bottle.json

refine tags

* Update perfume-bottle.json

* Update custom-words.txt

---------

Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Karsa <contact@karsa.org>
2026-10-13 12:35:27 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 3f1255ecfa chore(deps-dev): bump @vitejs/plugin-react (#4995)
Bumps the react-deps group with 1 update: [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react).


Updates `@vitejs/plugin-react` from 6.1.1 to 6.1.2
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.1.2/packages/plugin-react)

---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
  dependency-version: 6.1.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: react-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-13 09:40:00 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> e68f4c8a52 chore(deps-dev): bump preact (#4999)
Bumps the preact-deps group with 1 update: [preact](https://github.com/preactjs/preact).


Updates `preact` from 11.0.0 to 11.0.1
- [Release notes](https://github.com/preactjs/preact/releases)
- [Commits](https://github.com/preactjs/preact/compare/11.0.0...11.0.1)

---
updated-dependencies:
- dependency-name: preact
  dependency-version: 11.0.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: preact-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-13 09:39:35 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> af485d5f51 chore(deps-dev): bump the svelte-deps group with 2 updates (#4996)
Bumps the svelte-deps group with 2 updates: [@sveltejs/package](https://github.com/sveltejs/kit/tree/HEAD/packages/package) and [svelte](https://github.com/sveltejs/svelte/tree/HEAD/packages/svelte).


Updates `@sveltejs/package` from 2.5.8 to 3.0.0
- [Release notes](https://github.com/sveltejs/kit/releases)
- [Changelog](https://github.com/sveltejs/kit/blob/main/packages/package/CHANGELOG.md)
- [Commits](https://github.com/sveltejs/kit/commits/@sveltejs/package@3.0.0/packages/package)

Updates `svelte` from 5.57.1 to 5.57.2
- [Release notes](https://github.com/sveltejs/svelte/releases)
- [Changelog](https://github.com/sveltejs/svelte/blob/main/packages/svelte/CHANGELOG.md)
- [Commits](https://github.com/sveltejs/svelte/commits/svelte@5.57.2/packages/svelte)

---
updated-dependencies:
- dependency-name: "@sveltejs/package"
  dependency-version: 3.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: svelte-deps
- dependency-name: svelte
  dependency-version: 5.57.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: svelte-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-13 09:39:01 +02:00
Nitogithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Eric Fennis
a51b2b5def feat(icons): added graph-star icon (#4983)
* feat(icons): added `molecule` icon

* Update icons/molecule.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* rename `molecule` to `graph-star`

* Update graph-star.json

* Fix lint errors

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-13 09:37:37 +02:00
Rodrigo RodriguesandEric Fennis da43cb6bd2 feat(icons): added guitar-electric icon (#4917)
* Added icons/guitar-electric.svg

* Added icons/guitar-electric.json

* Refactor guitar-electric SVG paths

---------

Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-13 09:33:31 +02:00
Signalgridgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Eric Fennis
93e2665164 feat(icons): add cpu-ai icon (#4992)
* Add AI icon

* Refine AI icon SVG

* Update icons/ai.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update icons/ai.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update icons/ai.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix: address review feedback for cpu-ai icon

* chore: add mlops to custom dictionary

* Fix category list in cpu-ai.json

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-13 09:31:43 +02:00
da2f29d9fa feat(icons): added circle-fading-play icon (#4990)
* 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>
2026-10-13 09:26:37 +02:00
js-bestandgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> 2c5e1f1266 feat(icons): added Belarusian ruble icon (#4984)
* feat(icons): added Belarusian ruble icon

* Update icons/belarusian-ruble.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update icons/belarusian-ruble.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update icons/belarusian-ruble.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix(github/actions):fix trailing spaces in belarusian ruble icon

* fix(icons): Fixes in accordance with the code review.

* fix(icons): update cap height and corner rounding to match bold icon reference

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-10-13 09:25:33 +02:00
Rodrigo Rodriguesgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Eric Fennis
689376075d feat(icons): added users-collaboration icon (#4922)
* Added icons/users-collaboration.svg

* Added icons/users-collaboration.json

* Apply suggestion from @github-actions[bot]

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Apply batched suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* renamed round, added users-collaboration

* added contributor, formatted use-cases

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-13 09:24:32 +02:00
Karsa b573316c0b feat(icons): added calendar-chevrons-left icon (#5001) 2026-10-13 09:19:39 +02:00
Rodrigo Rodriguesgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>KarsaCopilot Autofix powered by AIEric Fennis
d9412f90bb feat(icons): added folder-user and folder-user icons (#4603)
* add folder-user and folder-user icons

* Update icons/folder-users.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update icons/folder-user.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Add contributors to folder-user.json

* Add contributors to folder-users.json

* Apply batched suggestions from code review

updated use cases text as per suggestion

Co-authored-by: Karsa <contact@karsa.org>

* Add users to folder-user.json

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Add contributors to folder-users

* Fix missing comma in folder-user.json

* Update folder-user.json

---------

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>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-13 09:07:50 +02:00
Eric Fennis 440a1e1dfb feat(icons): add message-circle-text icon (#4898)
* feat(icons): add message-circle-text icon with metadata

* Add more usecases

* Adds more tags
2026-10-12 17:35:46 +02:00
Rachit ThakurandKarsa 5b44cea30b fix(icons,categories): fix notifications category name and refine circle-x tags (#4994)
* 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>
2026-10-12 13:51:34 +02:00
Benjamin Haubegithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Eric FennisKarsa
d166e774d6 feat(icons): added server-nas icon (#4537)
* Add icons/server-nas

* Modify server-nas icon

* Add use-cases to server-nas.json

* Update icons/server-nas.json

* Update icons/server-nas.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update icons/server-nas.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update server-nas.json

* fix(icons): changed 'server-nas' icon

* feat(icons): added updated `server-nas` icon

* Format code

* Update server-nas.json

rewrite use cases and tags to be compliant

---------

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>
2026-10-12 13:49:43 +02:00
Benjamin Haubegithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Copilot Autofix powered by AIEric Fennis
70562c1ee1 feat(icons): added shield-house icon (#4602)
* add icons/shield-house.svg

* add icons/shield-house.json

* fix(icons): changed 'shield-house' icon

* Apply suggestion from @github-actions[bot]

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Refine use cases and update 'house' to 'property'

Updated use cases to use consistent phrasing and replaced 'house' with 'property' for clarity.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Fix missing newline in shield-house.svg

Add missing newline at the end of the SVG file.

* Fix missing newline at end of shield-house.json

Add newline at the end of shield-house.json

---------

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: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-09 16:29:24 +02:00
Karsagithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Copilot Autofix powered by AIEric Fennis
9563092c52 feat(icons): added user-round-star icon (#3469)
* Updated icons/user-star.svg

* Updated icons/user-star.json

* Update user-star.json

* Updated icons/user-star.svg

* Added icons/user-round-star.svg

* Added icons/user-round-star.json

* Update user-round-star.svg

* Update user-star.svg

* Apply batched suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Add empty use-cases user-round-star.json

* Add use cases for user round star icon

Added use cases for user round star icon.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* Correct spelling of 'Favoriting' to 'Favouriting'

* Update user-round-star.json

---------

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: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-09 15:56:22 +02:00
Edoardo Dottorigithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>KarsaEric Fennis
6d01fea3d3 feat(icons): added screw icon (#4932)
* Fix missing newline in screw.svg

Add missing newline at the end of the screw.svg file.

* Add screw.json icon configuration file

* Update icons/screw.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update icons/screw.json

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update screw.svg

* Update screw.json

* Update screw.json

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Karsa <contact@karsa.org>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-09 15:12:39 +02:00
949bc6d61f test(lucide-react): add tests for DynamicIcon fallback and ref forwarding (#4966)
* test(lucide-react): add tests for DynamicIcon fallback and ref forwarding

* style(lucide-react): format DynamicIcon test with Prettier

---------

Co-authored-by: grzdev <grzdev@users.noreply.github.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-09 15:06:46 +02:00
edaf5070d7 feat(icons): Add handle-bottom-right icon (#1793)
* Add `handle-down-right` icon

* Rename handle-down-right.svg to handle-bottom-right.svg

* Rename handle-down-right.json to handle-bottom-right.json

* Add use-case for bottom-right resize handle

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
Co-authored-by: Karsa <contact@karsa.org>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-09 14:40:54 +02:00
Benjamin Haubegithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>KarsaEric Fennis
e5b0a9c4aa feat(icons): added wifi-lock icon (#4913)
* feat(icons): added `wifi-lock` icon

* chore(metadata): added `wifi-lock` metadata

* chore(metadata): update `wifi-lock` use-cases metadata

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Apply batched suggestions from code review

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* feat(icons): fixed `wifi-lock` icon

* Update icons/wifi-lock.svg

Co-authored-by: Karsa <contact@karsa.org>

* chore(metadata): format `wifi-lock` metadata

* Add EOF

* Fix missing newline in wifi-lock.svg

Add missing newline at the end of the SVG file.

---------

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>
2026-10-09 14:33:24 +02:00
Eric FennisandCopilot Autofix powered by AI b49e37f906 chore(copilot-instruction): Adjust instruction text to allow more then 4 use-cases (#4989)
* Adjust instruction text

* Revise use-case writing instructions for icons

Updated guidelines for writing use-cases for icons.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-09 14:25:16 +02:00
Levi Bensleygithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Copilot Autofix powered by AIEric Fennis
da3a6102d1 feat(icons): added phone-log icon (#3598)
* Added icons/phone-log.svg

* Added icons/phone-log.json

* Update phone-log.svg paths for improved design

* Apply suggestion from @github-actions[bot]

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Update phone-log.json

* Update phone-log.json categories and use-cases

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

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: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-09 13:35:49 +02:00
c0c8de1db2 test(lucide): add tests for empty icons error and DocumentFragment root in createIcons (#4967)
Co-authored-by: grzdev <grzdev@users.noreply.github.com>
Co-authored-by: Eric Fennis <eric.fennis@gmail.com>
2026-10-09 13:18:12 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> 8857d7a636 chore(deps): bump next from 16.3.6 to 16.3.8 (#4988)
Bumps [next](https://github.com/vercel/next.js) from 16.3.6 to 16.3.8.
- [Release notes](https://github.com/vercel/next.js/releases)
- [Commits](https://github.com/vercel/next.js/compare/v16.3.6...v16.3.8)

---
updated-dependencies:
- dependency-name: next
  dependency-version: 16.3.8
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-09 13:14:18 +02:00
dependabot[bot]anddependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> bd4984a414 chore(deps-dev): bump sharp from 0.35.4 to 0.35.5 (#4987)
Bumps [sharp](https://github.com/lovell/sharp) from 0.35.4 to 0.35.5.
- [Release notes](https://github.com/lovell/sharp/releases)
- [Commits](https://github.com/lovell/sharp/compare/v0.35.4...v0.35.5)

---
updated-dependencies:
- dependency-name: sharp
  dependency-version: 0.35.5
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-10-09 13:14:05 +02:00
55b9969b82 ci(lint): split lint jobs and annotate Prettier and JSON schema errors in PRs (#4982)
* ci: split lint-code into ESLint, Prettier and JSON Schema jobs with PR annotations

- ESLint: annotations via setup-node's built-in eslint-stylish problem matcher.
- Prettier: new scripts/lintFormat.mts formats unformatted files in memory, diffs
  them and emits line-level `::error` annotations with the expected code.
- JSON Schema: replace ajv-cli with a local ESLint rule (Ajv draft 2020-12) that
  validates icons/categories JSON against their `$schema` and reports at the
  offending property. eslint-plugin-json-schema-validator was not used because it
  runs Ajv in draft-07 mode and ignores `dependentRequired`.

All annotations use workflow commands, so they work on fork PRs with a read-only token.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FVxEtqNswEDq1N23taZYh8

* Improve root value check and property error handling

Enhance error reporting for JSON schema validation.

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

* style(lint): format jsonSchemaPlugin with Prettier

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FVxEtqNswEDq1N23taZYh8

* test commit

* fix(lint): annotate syntax errors from Prettier and ESLint in PRs

- ESLint/JSON Schema jobs use a small GitHub formatter that prints `::error`
  workflow commands. setup-node's eslint-stylish matcher skipped parsing errors
  because they have no rule id.
- lintFormat.mts annotates Prettier syntax errors (exit code 2) at their line and
  column instead of only printing stderr, and still checks the other files.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FVxEtqNswEDq1N23taZYh8

* ci(lint): spell check icon and category metadata with cspell annotations

- New "Spelling" job runs scripts/lintSpelling.mts, which turns cspell findings
  into `::error` annotations (with cspell's suggested fix when it has one).
- cspell accepts both US and British English, ignores contributor usernames and
  deprecated `alias.typo` aliases.
- Add existing search tags and domain terms to .cspell/custom-words.txt so the
  current metadata passes.
- Add `lint:spelling` to `pnpm lint` and lint-staged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FVxEtqNswEDq1N23taZYh8

* fix(lint): pin JSON schemas per file set and drop typo tags

- json-schema/no-invalid now takes the schema from config (icon.schema.json for
  icons, category.schema.json for categories) and reports a `$schema` that
  points elsewhere, so metadata can't opt out of validation.
- Remove the misspelled `frigerator` and `sterisk` tags and their allowlist entries.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FVxEtqNswEDq1N23taZYh8

* fix(icons): split joined-word tags into separate words

Tags like `groupchat` and `timemachine` become `group chat` and `time machine`
so they read naturally and pass the spell check without allowlisting. Where the
spaced tag already existed (`smart home`) the joined one is dropped.

cspell now skips all alias names, since they are icon names that can't change
(e.g. the deprecated `palmtree` alias).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FVxEtqNswEDq1N23taZYh8

* Revert

* Try another error

* Revert error

---------

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-09 11:30:00 +02:00
Elena Kovelskikhgithub-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>Copilot Autofix powered by AIEric Fennis
62c584a5f2 feat(icons): added mail-dot icon (#3230)
* Added icons/mail-dot.svg

* Added icons/mail-dot.json

* Update mail-dot.svg

* Update mail-dot.svg

* Apply suggestion from @github-actions[bot]

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* Add use cases for mail-dot icon

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

---------

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: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-10-09 10:54:45 +02:00
143 changed files with 3438 additions and 983 deletions
+41
View File
@@ -11,3 +11,44 @@ ungroup
toc
sunlounger
monstera
# Search tags and terms used in icon and category metadata
ageusia
artboard
barbeque
choy
ecommerce
enby
flexbox
futbol
gddr
glassmorphism
gltf
interpoint
interpunct
middot
mistwarp
mlops
moleskine
nonbinary
pantone
parfum
phonendoscope
quadcopter
reapproval
rubygems
showreel
solera
timesheets
turbowarp
unbook
unguard
unkeys
unlabel
unprevented
unqueue
unsalvageable
unshield
unstar
vitamizer
wayfinding
+12
View File
@@ -0,0 +1,12 @@
[
"fix",
"feat",
"perf",
"refactor",
"test",
"style",
"docs",
"ci",
"build",
"chore"
]
@@ -32,7 +32,7 @@ A use-case tells a reader **where and why an icon would be used in a real interf
- Write each use-case as a short phrase, not a sentence. Start with a present participle verb: *Representing…*, *Indicating…*, *Marking…*, *Showing…*, *Confirming…*, *Toggling…*, *Categorizing…*, *Searching…*.
- Keep it to roughly 4–12 words. One clear idea per entry.
- No trailing period. No leading bullet, number, or dash (the surrounding format supplies that).
- Give each icon 1–4 use-cases, ordered most-common first. Prefer fewer strong entries over many weak or repetitive ones.
- Give each icon 1 or more use-cases, ordered most-common first. More than 4 use-cases are allowed when they are distinct and useful. Prefer fewer strong entries over many weak or repetitive ones.
### Voice
+103
View File
@@ -0,0 +1,103 @@
name: PR title
on:
pull_request_target:
types:
- opened
- reopened
- synchronize
- edited
permissions: {}
concurrency:
group: pr-title-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
generate-pr-title:
name: Generate PR Title
# Skip when a maintainer has opted out by adding the "Keep PR title" label,
# and on manual edits so they are not reverted straight away.
if: github.repository == 'lucide-icons/lucide' &&
github.event.action != 'edited' &&
!contains(github.event.pull_request.labels.*.name, 'Keep PR title')
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write # Required to edit the PR title
steps:
# We check out the main branch of the main repository for security reasons.
# The script only reads its input from the environment, so it never runs
# any code from the (untrusted) pull request.
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
repository: lucide-icons/lucide
fetch-depth: 0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version-file: 'package.json'
- name: Get changed files
id: changed-files
uses: tj-actions/changed-files@9426d40962ed5378910ee2e21d5f8c6fcbf2dd96 # v47.0.6
with:
# The checkout is the base branch, so the PR head commit isn't available locally.
use_rest_api: true
- name: Generate PR title
id: generate
run: |
NEW_TITLE="$(node ./scripts/generatePullRequestTitle.mts)"
{
echo "new_title<<PR_TITLE_EOF"
echo "$NEW_TITLE"
echo "PR_TITLE_EOF"
} >> "$GITHUB_OUTPUT"
env:
ADDED_FILES: ${{ steps.changed-files.outputs.added_files }}
CHANGED_FILES: ${{ steps.changed-files.outputs.all_changed_and_modified_files }}
CURRENT_TITLE: ${{ github.event.pull_request.title }}
- name: Update PR title
if: steps.generate.outputs.new_title != ''
run: gh pr edit "$PR_NUMBER" --title "$NEW_TITLE"
env:
GH_TOKEN: ${{ github.token }}
PR_NUMBER: ${{ github.event.pull_request.number }}
NEW_TITLE: ${{ steps.generate.outputs.new_title }}
# Runs after the title is generated: an edit made with `GITHUB_TOKEN` does not
# trigger new workflow runs, so a separate workflow would lint the old title.
# The lint action fetches the current title through the API.
lint-pr-title:
name: PR Title Lint
needs: generate-pr-title
if: ${{ !cancelled() }}
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: read # Required to read the PR title
steps:
# Checks out the base branch, so the allowed types can't be changed by the PR.
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- name: Read conventional commit types
id: commit-types
run: |
{
echo "types<<TYPES_EOF"
jq -r '.[]' .github/conventional-commit-types.json
echo "TYPES_EOF"
} >> "$GITHUB_OUTPUT"
- uses: amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50 # v6.1.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
types: ${{ steps.commit-types.outputs.types }}
requireScope: true
ignoreLabels: |
bot
+56 -3
View File
@@ -7,7 +7,8 @@ permissions:
contents: read
jobs:
lint-code:
eslint:
name: ESLint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
@@ -20,5 +21,57 @@ jobs:
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Run Linter
run: pnpm lint
# The formatter prints workflow commands, which GitHub shows as inline annotations.
- name: Run ESLint
run: pnpm lint:es --format ./scripts/eslint/githubFormatter.mjs
prettier:
name: Prettier
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
cache: 'pnpm'
node-version-file: 'package.json'
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Check formatting
run: pnpm lint:format:ci
json-schema:
name: JSON Schema
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
cache: 'pnpm'
node-version-file: 'package.json'
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Validate icon and category JSON
run: pnpm lint:json --format ./scripts/eslint/githubFormatter.mjs
spelling:
name: Spelling
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
cache: 'pnpm'
node-version-file: 'package.json'
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Spell check icon and category metadata
run: pnpm lint:spelling:ci
-36
View File
@@ -1,36 +0,0 @@
name: Linting PR title
on:
pull_request:
types:
- opened
- edited
- reopened
permissions:
contents: read
pull-requests: read # Required to read the PR title
jobs:
lint-pr-title:
name: PR Title Lint
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@48f256284bd46cdaab1048c3721360e808335d50 # v6.1.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
types: |
fix
feat
perf
refactor
test
style
docs
ci
build
chore
requireScope: true
ignoreLabels: |
bot
+22
View File
@@ -10,6 +10,9 @@ on:
- packages/shared/**
- tools/build-icons/**
- tools/rollup-plugins/**
- integrations/lucide-svelte/**
- package.json
- pnpm-workspace.yaml
- pnpm-lock.yaml
permissions:
@@ -63,3 +66,22 @@ jobs:
- name: Typecheck
run: pnpm --filter @lucide/svelte typecheck
integration:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: pnpm/action-setup@ea17c68df8912ef543352723c149a84f56e3d413 # v6.1.0
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
cache: 'pnpm'
node-version-file: 'package.json'
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Install Chromium
run: pnpm --filter @lucide/integration-svelte-vite exec playwright install --with-deps chromium
- name: Run integration checks
run: pnpm test:integrations:svelte
+1
View File
@@ -22,6 +22,7 @@ integrations/**/__screenshots__
integrations/**/.output
integrations/**/.nitro
integrations/**/.nuxt
integrations/**/.svelte-kit
outlined
lucide-font
packages/**/src/icons/*.js
+2
View File
@@ -1,4 +1,5 @@
pnpm-lock.yaml
.github/conventional-commit-types.json
# docs examples
docs/**/examples/
@@ -29,6 +30,7 @@ integrations/**/__screenshots__
integrations/**/.output
integrations/**/.nitro
integrations/**/.nuxt
integrations/**/.svelte-kit
# lucide-svelte
packages/svelte/src/icons/*.svelte
+5
View File
@@ -1,4 +1,5 @@
{
"language": "en,en-GB",
"dictionaries": ["en-us", "custom-words"],
"dictionaryDefinitions": [
{
@@ -6,5 +7,9 @@
"path": "./.cspell/custom-words.txt",
"addWords": true
}
],
"ignoreRegExpList": [
"/\"contributors\"\\s*:\\s*\\[[^\\]]*\\]/g",
"/\"name\"\\s*:\\s*\"[^\"]*\"/g"
]
}
+1 -1
View File
@@ -101,7 +101,7 @@
},
{
"name": "notifications",
"title": "Notification"
"title": "Notifications"
},
{
"name": "people",
@@ -228,5 +228,24 @@
],
"source": "https://github.com/GyeongHoKim/lucide-lit",
"documentation": "https://github.com/GyeongHoKim/lucide-lit/blob/main/README.md"
},
{
"name": "lucide-jte",
"description": "Implementation of Lucide icons for jte (Java Template Engine).",
"icon": "/framework-logos/java.svg",
"shields": [
{
"alt": "Latest Stable Version",
"src": "https://img.shields.io/github/v/release/sgruendel/lucide-jte",
"href": "https://github.com/sgruendel/lucide-jte/releases"
},
{
"alt": "Maven Central",
"src": "https://img.shields.io/maven-central/v/io.github.sgruendel/lucide-jte.svg",
"href": "https://central.sonatype.com/artifact/io.github.sgruendel/lucide-jte"
}
],
"source": "https://github.com/sgruendel/lucide-jte",
"documentation": "https://github.com/sgruendel/lucide-jte/blob/main/README.md"
}
]
@@ -27,7 +27,7 @@ defineProps({
<style scoped>
.fake-input {
background: var(--vp-c-bg-soft);
background: var(--vp-c-bg-alt);
border-radius: 8px;
color: var(--vp-c-text-2);
padding: 11px 16px;
@@ -56,7 +56,6 @@ const scaleDownVariants: Variants = {
riseUp: {
x: 0.5,
y: -0.5,
animationName: 'riseUp',
scale: 1,
transition: {
delay: 0.5,
@@ -68,7 +67,6 @@ const scaleDownVariants: Variants = {
x: -10.5,
y: -10.5,
scale: 0.1,
animationName: 'small',
transition: {
delay: 1,
duration: 1,
@@ -84,7 +82,6 @@ const drawAnimation = ref('visible');
const draw: Variants = {
hidden: { pathLength: 0, opacity: 0 },
visible: {
animationName: 'visible',
pathLength: 1.02,
opacity: 1,
transition: {
@@ -93,7 +90,6 @@ const draw: Variants = {
},
},
exit: (path) => ({
animationName: 'exit',
stroke: path ? 'var(--vp-c-text-1)' : 'var(--vp-c-brand)',
pathLength: 1.02,
opacity: 1,
@@ -103,25 +99,26 @@ const draw: Variants = {
}),
};
const onAnimationComplete = (item) => {
if (item.animationName === 'visible') {
// motion-v passes the variant label that finished, not the resolved variant
const onAnimationComplete = (variant: unknown) => {
if (variant === 'visible') {
drawAnimation.value = 'exit';
return;
}
if (item.animationName === 'exit') {
if (variant === 'exit') {
showHandles.value = false;
scaleDownAnimation.value = 'small';
}
if (item.animationName === 'small') {
if (variant === 'small') {
iconGridAnimation.value = 'showIcons';
}
if (item.animationName === 'riseUp') {
if (variant === 'riseUp') {
scaleDownAnimation.value = 'small';
}
if (item.animationName === 'showIcons') {
if (variant === 'showIcons') {
shrinkIconAnimation.value = 'shrinkIcons';
}
if (item.animationName === 'shrinkIcons') {
if (variant === 'shrinkIcons') {
iconGridAnimation.value = 'initial';
setTimeout(() => {
@@ -134,14 +131,12 @@ const randomIndex = ref(Math.floor(Math.random() * 64));
const iconAnimationVariants: Variants = {
initial: {
animationName: 'end',
opacity: 0,
x: 0,
y: 0,
transition: { duration: 1, delay: 1, ease: 'easeInOut' },
},
showIcons: (index) => ({
animationName: 'showIcons',
opacity: [0, 1, 1],
x: [0.5, 0, 0],
y: [-0.5, 0, 0],
@@ -155,7 +150,6 @@ const shrinkIconAnimation = ref('initial');
const shrinkIconVariants: Variants = {
initial: { strokeWidth: 2 },
shrinkIcons: (index) => ({
animationName: 'shrinkIcons',
opacity: 1,
strokeWidth: 0,
transition: { delay: 1.8, duration: 1.5, ease: 'easeInOut' },
@@ -257,7 +251,7 @@ const shrinkIconVariants: Variants = {
</motion.g>
<motion.g
class="svg-preview-control-path-marker-group"
stroke="#fff"
:style="{ stroke: 'var(--vp-c-text-1)' }"
stroke-width="0.125"
:initial="{ opacity: 1 }"
:animate="showHandles ? { opacity: 1 } : { opacity: 0 }"
@@ -11,18 +11,6 @@ import RocketDuotoneIcon from './RocketDuotoneIcon.ts';
<Badge :href="`https://github.com/lucide-icons/lucide/releases/tag/${data.version}`">
v{{ data.version }}
</Badge>
<Badge
class="badge-special confetti-button animate"
href="/guide/version-1"
>
<Icon :iconNode="RocketDuotoneIcon" name="rocket-duotone" />
Version 1
<Icon
:iconNode="moveRight"
name="move-right"
class=""
/>
</Badge>
</div>
</template>
@@ -45,22 +33,6 @@ import RocketDuotoneIcon from './RocketDuotoneIcon.ts';
gap: 8px;
padding: 4px 8px;
}
.badge-special {
font-weight: 500;
color: var(--vp-c-brand-1);
text-underline-offset: 2px;
align-items: center;
}
.badge-special::before,
.badge-special::after {
animation-delay: 0.5s !important;
animation-duration: 5s !important;
animation-iteration-count: infinite !important;
animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1) !important;
transform: translateX(32px);
}
</style>
<style>
+1 -1
View File
@@ -43,7 +43,7 @@
"nitropack": "^2.13.4",
"rollup-plugin-copy": "^3.5.0",
"semver": "^7.8.5",
"sharp": "^0.35.4",
"sharp": "^0.35.5",
"shiki": "^4.4.3",
"simple-git": "^4.0.1",
"sitemap": "^9.0.1",
+4
View File
@@ -0,0 +1,4 @@
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 32 32">
<path d="M11.622 24.74s-1.23.748.855.962c2.51.32 3.847.267 6.625-.267a10.02 10.02 0 0 0 1.763.855c-6.25 2.672-14.16-.16-9.244-1.55zm-.8-3.473s-1.336 1.015.748 1.23c2.725.267 4.862.32 8.55-.427a3.26 3.26 0 0 0 1.282.801c-7.534 2.244-15.976.214-10.58-1.603zm14.747 6.09s.908.748-1.015 1.336c-3.58 1.07-15.014 1.39-18.22 0-1.122-.48 1.015-1.175 1.7-1.282.695-.16 1.07-.16 1.07-.16-1.23-.855-8.175 1.763-3.526 2.51 12.77 2.084 23.296-.908 19.983-2.404zM12.2 17.633s-5.824 1.39-2.084 1.87c1.603.214 4.755.16 7.694-.053 2.404-.214 4.81-.64 4.81-.64s-.855.374-1.443.748c-5.93 1.55-17.312.855-14.052-.748 2.778-1.336 5.076-1.175 5.076-1.175zm10.42 5.824c5.984-3.1 3.206-6.09 1.282-5.717-.48.107-.695.214-.695.214s.16-.32.534-.427c3.794-1.336 6.786 4.007-1.23 6.09 0 0 .053-.053.107-.16zm-9.83 8.442c5.77.374 14.587-.214 14.8-2.94 0 0-.427 1.07-4.755 1.87-4.916.908-11.007.8-14.587.214 0 0 .748.64 4.542.855z" fill="#4e7896"/>
<path d="M18.996.001s3.313 3.366-3.152 8.442c-5.183 4.114-1.175 6.465 0 9.137-3.046-2.725-5.236-5.13-3.74-7.373C14.294 6.893 20.332 5.3 18.996.001zm-1.7 15.335c1.55 1.763-.427 3.366-.427 3.366s3.954-2.03 2.137-4.542c-1.656-2.404-2.94-3.58 4.007-7.587 0 0-10.953 2.725-5.717 8.763z" fill="#f58219"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

+23
View File
@@ -8,6 +8,8 @@ import htmlEslint from '@html-eslint/eslint-plugin';
import htmlParser from '@html-eslint/parser';
import defaultAttrs from './tools/build-icons/render/default-attrs.json' with { type: 'json' };
import tseslint from 'typescript-eslint';
import jsonSchema from './scripts/eslint/jsonSchemaPlugin.mjs';
import * as jsoncParser from 'jsonc-eslint-parser';
const gitignorePath = path.join(import.meta.dirname, '.gitignore');
@@ -152,4 +154,25 @@ export default defineConfig([
'@html-eslint/quotes': 'error',
},
},
{
files: ['icons/*.json', 'categories/*.json'],
languageOptions: {
parser: jsoncParser,
},
plugins: {
'json-schema': jsonSchema,
},
},
{
files: ['icons/*.json'],
rules: {
'json-schema/no-invalid': ['error', { schema: 'icon.schema.json' }],
},
},
{
files: ['categories/*.json'],
rules: {
'json-schema/no-invalid': ['error', { schema: 'category.schema.json' }],
},
},
]);
-1
View File
@@ -8,7 +8,6 @@
"use-cases": [],
"tags": [
"symbol",
"sterisk",
"mark",
"pointer",
"pencil",
+1 -1
View File
@@ -16,7 +16,7 @@
"payment",
"bdt",
"৳",
"currencysymbol",
"currency symbol",
"cash",
"banknote",
"price",
+5 -5
View File
@@ -9,9 +9,9 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M10 3a41 41 0 000 18" />
<path d="M14 3a41 41 0 010 18" />
<path d="M16.997 21a2 2 0 001.68-.92 15.25 15.25 0 000-16.16 2 2 0 00-1.68-.92h-10a2 2 0 00-1.681.92 15.25 15.25 0 000 16.16 2 2 0 001.681.92z" />
<path d="M3.54 16h16.914" />
<path d="M3.54 8h16.914" />
<path d="M10.5 2a34.5 34.5 0 000 20" />
<path d="M13.5 2a34.5 34.5 0 010 20" />
<path d="M4.67 17h14.67" />
<path d="M4.67 7h14.67" />
<path d="M6.23 3.06a19 19 0 000 17.88A2 2 0 008 22h8a2 2 0 001.77-1.06 19 19 0 000-17.88A2 2 0 0016 2H8a2 2 0 00-1.77 1.06" />
</svg>

Before

Width:  |  Height:  |  Size: 490 B

After

Width:  |  Height:  |  Size: 480 B

+31
View File
@@ -0,0 +1,31 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"js-best"
],
"use-cases": [
"Displaying prices and amounts in BYN in e-commerce apps",
"Selecting BYN in multi-currency pickers",
"Labeling account balances and transactions in BYN",
"Showing BYN exchange rates in currency converters"
],
"tags": [
"currency",
"money",
"payment",
"byn",
"iso4217",
"fiat",
"prices",
"localization",
"banking",
"checkout",
"wallet",
"exchange-rate"
],
"categories": [
"finance",
"shopping",
"account"
]
}
@@ -9,7 +9,6 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M9 18V5l12-2v13" />
<circle cx="6" cy="18" r="3" />
<circle cx="18" cy="16" r="3" />
<path d="M3 16 L13 16" />
<path d="M6 12h9a4 4 0 0 1 0 8H7a1 1 0 0 1-1-1V5a1 1 0 0 1 1-1h7" />
</svg>

Before

Width:  |  Height:  |  Size: 308 B

After

Width:  |  Height:  |  Size: 307 B

+1 -1
View File
@@ -30,7 +30,7 @@
"startup",
"registration",
"onboarding",
"realestate",
"real estate",
"property"
],
"categories": [
+34
View File
@@ -0,0 +1,34 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"karsa-mistmere",
"ericfennis",
"jguddas",
"colebemis",
"AlexandrePhilibert"
],
"use-cases": [
"Indicating past events in calendars",
"Rewinding through calendar views"
],
"tags": [
"navigation",
"arrow",
"direction",
"symbol",
"pointer",
"indicator",
"next",
"menu",
"date",
"day",
"month",
"year",
"events"
],
"categories": [
"time",
"arrows",
"navigation"
]
}
+18
View File
@@ -0,0 +1,18 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="m11 21-3-3 3-3" />
<path d="M16 2v3" />
<path d="M21 9H3" />
<path d="M3 11.5V5a2 2 0 012-2h14a2 2 0 012 2v14a2 2 0 01-2 2h-4" />
<path d="m5 21-3-3 3-3" />
<path d="M8 2v3" />
</svg>

After

Width:  |  Height:  |  Size: 406 B

+2 -5
View File
@@ -14,20 +14,17 @@
"tags": [
"navigation",
"arrow",
"right",
"chevron",
"direction",
"symbol",
"pointer",
"indicator",
"next",
"previous",
"menu",
"date",
"day",
"month",
"year",
"events",
"chevrons"
"events"
],
"categories": [
"time",
+1 -1
View File
@@ -11,7 +11,7 @@
"tags": [
"battery",
"automobile",
"powercell",
"power cell",
"electric",
"power",
"electricity",
+44
View File
@@ -0,0 +1,44 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"rrod497"
],
"use-cases": [
"Representing SSL/TLS security certificates",
"Representing educational or professional certifications"
],
"tags": [
"award",
"ribbon",
"medal",
"achievement",
"pinned",
"badge",
"recognition",
"laurel",
"commendation",
"diploma",
"official",
"proof",
"fact",
"verified",
"license",
"warrant",
"authorization",
"legal",
"ownership",
"credential",
"ssl",
"tls",
"security",
"trust",
"cybersecurity",
"authority",
"graduation",
"study"
],
"categories": [
"connectivity",
"security"
]
}
+17
View File
@@ -0,0 +1,17 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 10H6" />
<path d="m20.69 15.479 1.29 4.88a.5.5 0 01-.698.591l-1.843-.849a1 1 0 00-.879.001l-1.846.85a.5.5 0 01-.692-.593l1.29-4.88" />
<path d="M22 6.675V6a2 2 0 00-2-2H4a2 2 0 00-2 2v12a2 2 0 002 2h8" />
<path d="M6 14h4" />
<circle cx="19" cy="13" r="3" />
</svg>

After

Width:  |  Height:  |  Size: 490 B

+35
View File
@@ -0,0 +1,35 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"tatianatsiguleva",
"jordan808",
"jguddas",
"colebemis",
"karsa-mistmere"
],
"use-cases": [
"Indicating short-form video clips in media browsing interfaces",
"Representing preview or teaser playback for video thumbnails",
"Providing an entry point for stories, reels, or shorts in social apps",
"Marking auto-generated clips from live streams or long recordings"
],
"tags": [
"short clips",
"shorts",
"reels",
"stories",
"video",
"highlights",
"social media",
"content",
"preview",
"teaser",
"clip",
"short form",
"vertical video"
],
"categories": [
"multimedia",
"social"
]
}
+18
View File
@@ -0,0 +1,18 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 2a10 10 0 0 1 7.38 16.75" />
<path d="M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z" />
<path d="M2.5 8.875a10 10 0 0 0-.5 3" />
<path d="M2.83 16a10 10 0 0 0 2.43 3.4" />
<path d="M4.636 5.235a10 10 0 0 1 .891-.857" />
<path d="M8.644 21.42a10 10 0 0 0 7.631-.38" />
</svg>

After

Width:  |  Height:  |  Size: 548 B

+1
View File
@@ -8,6 +8,7 @@
"tags": [
"cancel",
"close",
"cross",
"delete",
"remove",
"times",
+1 -1
View File
@@ -13,7 +13,7 @@
"bytes",
"servers",
"backup",
"timemachine",
"time machine",
"rotate",
"synchronize",
"synchronise",
+46
View File
@@ -0,0 +1,46 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"colebemis",
"karsa-mistmere",
"ericfennis",
"jguddas",
"signalgridco"
],
"use-cases": [
"Indicating AI-powered features in applications and dashboards",
"Representing AI assistants, chatbots, and conversational UIs",
"Identifying machine learning models, training, or inference jobs",
"Labeling generative AI content, tools, or outputs",
"Signifying integrations with AI services, APIs, or platforms"
],
"tags": [
"ai",
"artificial intelligence",
"machine learning",
"neural network",
"automation",
"intelligence",
"generative",
"assistant",
"chatbot",
"llm",
"deep learning",
"inference",
"training",
"mlops",
"model",
"predictive",
"on-device",
"edge",
"api",
"service",
"cognitive",
"processor",
"chip"
],
"categories": [
"devices",
"development"
]
}
+28
View File
@@ -0,0 +1,28 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12 20v2" />
<path d="M12 2v2" />
<path d="M16 9v6" />
<path d="M17 20v2" />
<path d="M17 2v2" />
<path d="M2 12h2" />
<path d="M2 17h2" />
<path d="M2 7h2" />
<path d="M20 12h2" />
<path d="M20 17h2" />
<path d="M20 7h2" />
<path d="M7 20v2" />
<path d="M7 2v2" />
<path d="M8 13h4" />
<path d="M8 15v-4a2 2 0 014 0v4" />
<rect x="4" y="4" width="16" height="16" rx="2" />
</svg>

After

Width:  |  Height:  |  Size: 623 B

+1 -1
View File
@@ -13,7 +13,7 @@
"bytes",
"servers",
"backup",
"timemachine",
"time machine",
"rotate",
"arrow",
"left"
+31
View File
@@ -0,0 +1,31 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"it-is-not",
"danielbayley",
"karsa-mistmere",
"jamiemlaw"
],
"use-cases": [
"Representing music or an audio track",
"Representing a single eighth note in music notation"
],
"tags": [
"audio",
"music",
"sound",
"note",
"quaver"
],
"categories": [
"multimedia",
"files"
],
"aliases": [
{
"name": "music-2",
"deprecationReason": "alias.name",
"deprecated": true
}
]
}
@@ -9,7 +9,6 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<rect width="12" height="4" x="6" y="3" />
<rect width="6" height="4" x="9" y="7" />
<rect width="18" height="10" x="3" y="11" rx="2" />
<path d="m19 6-5.2-3.9a.5.5 0 0 0-.8.4V18" />
<circle cx="9" cy="18" r="4" />
</svg>

Before

Width:  |  Height:  |  Size: 351 B

After

Width:  |  Height:  |  Size: 290 B

+32
View File
@@ -0,0 +1,32 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"colebemis",
"csandman",
"mittalyashu",
"ericfennis",
"jamiemlaw"
],
"use-cases": [
"Representing music or an audio track",
"Representing paired eighth notes in music notation"
],
"tags": [
"audio",
"music",
"sound",
"notes",
"quavers"
],
"categories": [
"multimedia",
"files"
],
"aliases": [
{
"name": "music",
"deprecationReason": "alias.name",
"deprecated": true
}
]
}
+2 -3
View File
@@ -9,8 +9,7 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M9 18V5l12-2v13" />
<path d="m9 9 12-2" />
<circle cx="6" cy="18" r="3" />
<path d="M21 16V3a1 1 0 0 0-1.28-.96l-10 2.917a1 1 0 0 0-.72.96V19" />
<circle cx="18" cy="16" r="3" />
<circle cx="6" cy="19" r="3" />
</svg>

Before

Width:  |  Height:  |  Size: 333 B

After

Width:  |  Height:  |  Size: 350 B

+39
View File
@@ -0,0 +1,39 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"rrod497",
"colebemis",
"csandman",
"ericfennis",
"karsa-mistmere",
"danielbayley",
"jguddas"
],
"use-cases": [
"Representing home folders or private directories in local and cloud storage",
"Storing private HR, tax, or backup records",
"Showing user-owned directories in multi-user systems",
"Organizing personal contacts or address book entries"
],
"tags": [
"directory",
"profile",
"person",
"personal",
"contact",
"document",
"account",
"individual",
"home folder",
"shared",
"access",
"owner"
],
"categories": [
"files",
"account",
"social",
"people",
"security"
]
}
+15
View File
@@ -0,0 +1,15 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M10.254 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2V9.255" />
<path d="M22 22a4 4 0 0 0-8 0" />
<circle cx="18" cy="15" r="3" />
</svg>

After

Width:  |  Height:  |  Size: 406 B

+39
View File
@@ -0,0 +1,39 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"rrod497",
"colebemis",
"csandman",
"ericfennis",
"karsa-mistmere",
"danielbayley",
"jguddas"
],
"use-cases": [
"Representing shared network directories in operating systems",
"Showing shared drives in cloud storage apps",
"Organizing team or project collaboration workspaces",
"Organizing group contacts or address book entries"
],
"tags": [
"directory",
"profile",
"shared",
"people",
"document",
"accounts",
"group",
"team",
"permission",
"access",
"collaboration",
"organization"
],
"categories": [
"files",
"account",
"social",
"people",
"security"
]
}
+16
View File
@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M5.254 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2V9.255" />
<circle cx="13" cy="15" r="3" />
<path d="M17 22a4 4 0 0 0-8 0" />
<path d="M22 22A4 4 0 0 0 20.24 18.686 1 1 0 0 1 20.1 17.143 3 3 0 0 0 19.5 12.402" />
</svg>

After

Width:  |  Height:  |  Size: 494 B

+36
View File
@@ -0,0 +1,36 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"karsa-mistmere"
],
"use-cases": [
"Visualizing relationships between nodes in a graph",
"Representing mind maps, ideas, and concept associations",
"Showing devices connected to a central server or hub",
"Representing interconnected systems and networks",
"Showing dependencies and relationships between components",
"Representing molecules and chemical structures in scientific applications"
],
"tags": [
"mind map",
"network",
"hub",
"nodes",
"links",
"connections",
"relationships",
"dependencies",
"bonds",
"structure",
"topology",
"cluster",
"thoughts",
"ideas",
"concepts",
"molecule"
],
"categories": [
"development",
"charts"
]
}
+23
View File
@@ -0,0 +1,23 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="m12.342 9.316 1.764-3.527" />
<path d="m12.59 14.545 2.35 3.759" />
<path d="m13.982 12.332 4.03.447" />
<path d="M5.414 17.586 8.88 14.12" />
<path d="M9.025 9.742 5.317 5.505" />
<circle cx="11" cy="12" r="3" />
<circle cx="15" cy="4" r="2" />
<circle cx="16" cy="20" r="2" />
<circle cx="20" cy="13" r="2" />
<circle cx="4" cy="19" r="2" />
<circle cx="4" cy="4" r="2" />
</svg>

After

Width:  |  Height:  |  Size: 614 B

+36
View File
@@ -0,0 +1,36 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"danielbayley",
"jguddas",
"rrod497"
],
"use-cases": [
"Digital Audio Workstations (DAWs) or music production software to represent MIDI track routing, virtual instrument tracks, or guitar controller settings.",
"Music streaming apps to represent rock playlists, genre categories, or live radio stations.",
"Event ticketing websites to highlight upcoming rock concerts and music festivals.",
"Online music store platforms to categorize instruments, gear, or digital audio tracks.",
"Music education blogs to tag articles, video tutorials, or guitar lesson courses."
],
"tags": [
"acoustic",
"instrument",
"strings",
"riff",
"rock",
"band",
"country",
"concert",
"performance",
"play",
"lead",
"loud",
"music",
"audio",
"sound",
"noise"
],
"categories": [
"multimedia"
]
}
+16
View File
@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="m12.172 11.828 4.242-4.242" />
<path d="M16.414 7.586A2 2 0 0017 6.172V5a2 2 0 011.177-1.823L20.59 2.09a1 1 0 011.32 1.32l-1.088 2.412A2 2 0 0119 7h-1a2 2 0 00-1.586.586" />
<path d="m6 16 2 2" />
<path d="M8.23 9.85a3 3 0 011.28-1.454 1 1 0 011.496.815 4 4 0 003.783 3.783 1 1 0 01.815 1.496 3 3 0 01-1.454 1.28l-.92.38A2 2 0 0012 18a4 4 0 01-4 4 6 6 0 01-6-6 4 4 0 014-4 2 2 0 001.85-1.23z" />
</svg>

After

Width:  |  Height:  |  Size: 621 B

+32
View File
@@ -0,0 +1,32 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"it-is-not",
"danielbayley",
"karsa-mistmere"
],
"use-cases": [
"Representing music or an audio track",
"Representing a half note in music notation"
],
"tags": [
"audio",
"music",
"sound",
"note",
"crotchet",
"minim",
"quarter note"
],
"categories": [
"multimedia",
"files"
],
"aliases": [
{
"name": "music-3",
"deprecationReason": "alias.name",
"deprecated": true
}
]
}

Before

Width:  |  Height:  |  Size: 267 B

After

Width:  |  Height:  |  Size: 267 B

+21
View File
@@ -0,0 +1,21 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"ocavue"
],
"tags": [
"mouse",
"grab",
"handle",
"move",
"drag",
"resize",
"corner"
],
"use-cases": [
"Indicating the bottom-right resize handle of a resizable object"
],
"categories": [
"design"
]
}
@@ -9,6 +9,6 @@
stroke-linecap="round"
stroke-linejoin="round"
>
<circle cx="8" cy="18" r="4" />
<path d="M12 18V2l7 4" />
<path d="M21 8 8 21" />
<path d="m21 15-6 6" />
</svg>

Before

Width:  |  Height:  |  Size: 270 B

After

Width:  |  Height:  |  Size: 260 B

+1 -1
View File
@@ -30,7 +30,7 @@
"nautical",
"harbor",
"shore",
"lightbeam",
"light beam",
"wayfinding",
"guidance",
"onboarding",
+1 -1
View File
@@ -18,7 +18,7 @@
"unread",
"scheduled",
"delayed",
"sendlater",
"send later",
"delivery",
"reminder",
"pending",
+33
View File
@@ -0,0 +1,33 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"colebemis",
"karsa-mistmere",
"ericfennis",
"jguddas",
"elenakovelskikh"
],
"use-cases": [
"Indicating new or unread messages in messaging systems",
"Drawing attention to recent activity in inboxes and notification areas"
],
"tags": [
"mail",
"envelope",
"communication",
"post",
"send",
"address",
"notification",
"email",
"message",
"letter",
"unread",
"dot"
],
"categories": [
"text",
"account",
"mail"
]
}
+15
View File
@@ -0,0 +1,15 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12.674 4H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-4.675" />
<path d="m2 7 9 5.701a2 2 0 0 0 2 0l1.084-.686" />
<circle cx="19" cy="7" r="3" />
</svg>

After

Width:  |  Height:  |  Size: 377 B

+44
View File
@@ -0,0 +1,44 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"colebemis",
"csandman",
"ericfennis",
"jguddas",
"karsa-mistmere"
],
"use-cases": [
"Representing a text message or comment",
"Opening a chat or messaging inbox",
"Marking a comment thread or discussion on a post",
"Indicating a live chat or customer support conversation",
"Representing a chatbot or AI assistant conversation",
"Showing a message transcript or chat history",
"Representing SMS or instant messaging in a contact list",
"Indicating written feedback, reviews, or remarks"
],
"tags": [
"comment",
"chat",
"conversation",
"dialog",
"feedback",
"speech",
"bubble",
"sms",
"texting",
"messaging",
"dm",
"discussion",
"thread",
"transcript",
"written",
"writing",
"lines",
"support",
"chatbot"
],
"categories": [
"social"
]
}
+16
View File
@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M3.086 17.509a2 2 0 00-.094-1.167 10 10 0 114.777 4.719 2 2 0 00-1.099-.092l-3.413.998a1 1 0 01-1.236-1.168z" />
<path d="M8 12h9" />
<path d="M8 16h5" />
<path d="M8 8h7" />
</svg>

After

Width:  |  Height:  |  Size: 400 B

+1 -1
View File
@@ -26,7 +26,7 @@
"interview",
"debate",
"group",
"groupchat",
"group chat",
"threads",
"unread",
"bubble",
-18
View File
@@ -1,18 +0,0 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"it-is-not",
"danielbayley",
"karsa-mistmere"
],
"use-cases": [],
"tags": [
"quaver",
"eighth note",
"note"
],
"categories": [
"multimedia",
"files"
]
}
-20
View File
@@ -1,20 +0,0 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"it-is-not",
"danielbayley",
"karsa-mistmere"
],
"use-cases": [],
"tags": [
"crotchet",
"minim",
"quarter note",
"half note",
"note"
],
"categories": [
"multimedia",
"files"
]
}
-17
View File
@@ -1,17 +0,0 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"it-is-not",
"karsa-mistmere"
],
"use-cases": [],
"tags": [
"semiquaver",
"sixteenth note",
"note"
],
"categories": [
"multimedia",
"files"
]
}
-19
View File
@@ -1,19 +0,0 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"colebemis",
"csandman",
"mittalyashu",
"ericfennis"
],
"use-cases": [],
"tags": [
"note",
"quaver",
"eighth note"
],
"categories": [
"multimedia",
"files"
]
}
+1 -1
View File
@@ -20,7 +20,7 @@
"eco-friendly",
"kraft",
"retail",
"doggybag"
"doggy bag"
],
"categories": [
"food-beverage",
+36
View File
@@ -0,0 +1,36 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"rrod497"
],
"use-cases": [
"Representing fragrance and cosmetic products in retail catalogs",
"Indicating duty-free and boutique fragrance stores",
"Distinguishing scented and unscented skincare products"
],
"tags": [
"eau de parfum",
"eau de toilette",
"essence",
"aftershave",
"cologne",
"aroma",
"fragrance",
"smell",
"scent",
"bouquet",
"gift",
"duty free",
"spray",
"puff",
"atomizer",
"mist",
"beauty",
"skincare",
"cosmetics"
],
"categories": [
"shopping",
"travel"
]
}
+21
View File
@@ -0,0 +1,21 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M 5 22 H 11.072" />
<path d="M15 5 C 23 4 23.328 12.676 20 14.536" />
<path d="M15.802 10.308 C 14.776 9.465 14 8.496 14 7" />
<path d="M2 2h.01" />
<path d="M2 7h.01" />
<path d="M5 4.5h.01" />
<path d="M8.127 22 A 8 8 0 0 1 4 15 3 3 0 0 1 4.879 12.879C 6.879 10.879 10 10 10 7" />
<circle cx="18" cy="18" r="4" />
<rect x="9" y="2" width="6" height="5" rx="1" />
</svg>

After

Width:  |  Height:  |  Size: 600 B

+29
View File
@@ -0,0 +1,29 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"colebemis",
"csandman",
"ericfennis",
"karsa-mistmere",
"jamiemlaw",
"Levi-Bensley"
],
"tags": [
"telephone",
"communication",
"mobile",
"device",
"contact",
"history",
"data",
"information",
"call"
],
"categories": [
"communication"
],
"use-cases": [
"Reviewing recent incoming and outgoing calls",
"Displaying call history in communication apps"
]
}
+15
View File
@@ -0,0 +1,15 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M13.832 16.568a1 1 0 001.213-.303l.355-.465A2 2 0 0117 15h3a2 2 0 012 2v3a2 2 0 01-2 2A18 18 0 012 4a2 2 0 012-2h3a2 2 0 012 2v3a2 2 0 01-.8 1.6l-.468.351a1 1 0 00-.292 1.233 14 14 0 006.392 6.384" />
<path d="M14.396 4.171h7.171" />
<path d="M17.343 8.17h4.224" />
</svg>

After

Width:  |  Height:  |  Size: 489 B

-1
View File
@@ -5,7 +5,6 @@
],
"use-cases": [],
"tags": [
"frigerator",
"fridge",
"freezer",
"cooler",
-1
View File
@@ -18,7 +18,6 @@
"housekeeping",
"tool",
"maintenance",
"smarthome",
"sweeping",
"hygiene",
"chores",
+1 -1
View File
@@ -8,7 +8,7 @@
"tags": [
"barcode",
"scan",
"qrcode",
"qr code",
"url",
"information",
"digital",
+26
View File
@@ -0,0 +1,26 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"rrod497",
"edik17",
"karsa-mistmere"
],
"use-cases": [
"Representing DIY and home improvement sections",
"Accessing assembly instructions on furniture product pages",
"Adding threaded fasteners to assemblies in CAD software"
],
"tags": [
"fastener",
"hardware",
"bolt",
"screwdriver",
"repair",
"assembly",
"diy",
"flathead"
],
"categories": [
"tools"
]
}
+17
View File
@@ -0,0 +1,17 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M10 9v10" />
<path d="M14 13v2" />
<path d="M16.5 10.5 5.706 21.294A2.4 2.4 0 014.002 22H2.5a.5.5 0 01-.5-.5v-1.502a2.4 2.4 0 01.706-1.704L13.5 7.5" />
<path d="M20.819 11.575a6 6 0 00.969-5.162.6.6 0 00-.981-.219l-.455.454a1.2 1.2 0 01-1.704 0l-1.296-1.296a1.2 1.2 0 010-1.704l.454-.453a.595.595 0 00-.219-.98 6 6 0 00-5.162.967 2 2 0 00-.222 3.019l5.596 5.597a2 2 0 003.02-.222" />
<path d="M6 13v8" />
</svg>

After

Width:  |  Height:  |  Size: 632 B

+29
View File
@@ -0,0 +1,29 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"benhaube"
],
"use-cases": [
"Representing network-attached storage devices in network diagrams",
"Displaying the status of network-attached storage devices",
"Selecting network-attached storage as a backup destination",
"Accessing a network-attached storage administration dashboard"
],
"tags": [
"storage",
"network",
"server",
"backup",
"raid",
"files",
"sharing",
"disk",
"hardware",
"lan",
"cloud"
],
"categories": [
"devices",
"development"
]
}
+18
View File
@@ -0,0 +1,18 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M10 16V8" />
<path d="M14 16V8" />
<path d="M18 16V8" />
<path d="M6 12h.01" />
<path d="M6 16h.01" />
<rect x="2" y="4" width="20" height="16" rx="2" />
</svg>

After

Width:  |  Height:  |  Size: 383 B

+1 -1
View File
@@ -8,7 +8,7 @@
"beach",
"sand",
"holiday",
"sealife",
"sea life",
"fossil",
"ammonite",
"biology",
+1 -1
View File
@@ -37,7 +37,7 @@
"admin",
"verification",
"crest",
"shieldcog",
"shield cog",
"bravery",
"knight",
"foot soldier",
+55
View File
@@ -0,0 +1,55 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"benhaube"
],
"use-cases": [
"Indicating a segregated IoT network in router firmware",
"Indicating an alarm armed in home mode",
"Indicating firewall protection for a home network",
"Showing home insurance coverage for a property",
"Representing secure smart-device groups in smart-home hubs",
"Showing monitored alarm enrollment on a dashboard"
],
"tags": [
"cybersecurity",
"secure",
"safety",
"protection",
"guardian",
"armored",
"armoured",
"defense",
"defence",
"defender",
"block",
"threat",
"prevention",
"antivirus",
"vigilance",
"vigilant",
"detection",
"scan",
"strength",
"strong",
"tough",
"invincible",
"invincibility",
"invulnerable",
"undamaged",
"audit",
"admin",
"property",
"household",
"connectivity",
"building",
"residence"
],
"categories": [
"account",
"security",
"development",
"home",
"connectivity"
]
}
+15
View File
@@ -0,0 +1,15 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M15 22a1 1 0 01-1-1v-4a1 1 0 01.445-.832l3-2a1 1 0 011.11 0l3 2A1 1 0 0122 17v4a1 1 0 01-1 1z" />
<path d="M18 22v-3" />
<path d="M20 10.418V6a1 1 0 00-1-1c-2 0-4.49-1.19-6.24-2.72a1.17 1.17 0 00-1.52 0C9.5 3.8 7 5 5 5a1 1 0 00-1 1v7c0 4.602 2.67 7.1 6.037 8.603" />
</svg>

After

Width:  |  Height:  |  Size: 490 B

+30
View File
@@ -0,0 +1,30 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"it-is-not",
"karsa-mistmere",
"jamiemlaw"
],
"use-cases": [
"Representing music or an audio track",
"Representing paired sixteenth notes in music notation"
],
"tags": [
"audio",
"music",
"sound",
"notes",
"semiquavers"
],
"categories": [
"multimedia",
"files"
],
"aliases": [
{
"name": "music-4",
"deprecationReason": "alias.name",
"deprecated": true
}
]
}
+16
View File
@@ -0,0 +1,16 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M21 16V3a1 1 0 0 0-1.28-.96l-10 2.917a1 1 0 0 0-.72.96V19" />
<path d="M21 6 9 9.5" />
<circle cx="18" cy="16" r="3" />
<circle cx="6" cy="19" r="3" />
</svg>

After

Width:  |  Height:  |  Size: 377 B

+1 -1
View File
@@ -27,7 +27,7 @@
"performance",
"lens",
"leaderboard",
"followspot",
"follow spot",
"best",
"highlight"
],
+1 -1
View File
@@ -24,7 +24,7 @@
"handle",
"plaque",
"toothpaste",
"selfcare",
"self care",
"grooming",
"fresh",
"clean"
+1 -1
View File
@@ -24,7 +24,7 @@
"handle",
"plaque",
"toothpaste",
"selfcare",
"self care",
"grooming"
],
"categories": [
+1 -1
View File
@@ -7,7 +7,7 @@
],
"use-cases": [],
"tags": [
"flatscreen",
"flat screen",
"television",
"stream",
"display",
+1 -1
View File
@@ -5,7 +5,7 @@
],
"use-cases": [],
"tags": [
"flatscreen",
"flat screen",
"television",
"stream",
"display",
+36
View File
@@ -0,0 +1,36 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"colebemis",
"csandman",
"ericfennis",
"karsa-mistmere"
],
"use-cases": [
"Indicating an admin or super user",
"Marking a favourite person",
"Highlighting the best user in a category"
],
"tags": [
"person",
"account",
"favorite",
"contact",
"like",
"review",
"rating",
"admin",
"avatar",
"profile",
"featured",
"moderator",
"verified",
"badge",
"award",
"champion",
"starred"
],
"categories": [
"account"
]
}
+15
View File
@@ -0,0 +1,15 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M16.051 12.616a1 1 0 0 1 1.909.024l.737 1.452a1 1 0 0 0 .737.535l1.634.256a1 1 0 0 1 .588 1.806l-1.172 1.168a1 1 0 0 0-.282.866l.259 1.613a1 1 0 0 1-1.541 1.134l-1.465-.75a1 1 0 0 0-.912 0l-1.465.75a1 1 0 0 1-1.539-1.133l.258-1.613a1 1 0 0 0-.282-.867l-1.156-1.152a1 1 0 0 1 .572-1.822l1.633-.256a1 1 0 0 0 .737-.535z" />
<path d="M2 21a8 8 0 0 1 6.778-7.905" />
<path d="M8.927 12.885a5 5 0 1 1 6.061-4.535" />
</svg>

After

Width:  |  Height:  |  Size: 635 B

+35
View File
@@ -0,0 +1,35 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"rrod497",
"karsa-mistmere"
],
"use-cases": [
"Representing collaborative workspaces in multi-user apps",
"Sharing ownership of documents or content",
"Indicating peer-to-peer system architecture",
"Scheduling team meetings and gatherings"
],
"tags": [
"group",
"people",
"collaboration",
"users",
"team",
"communication",
"cooperative",
"workspace",
"peer-to-peer",
"p2p",
"shared",
"delegation",
"handoff",
"coauthor",
"profiles"
],
"categories": [
"account",
"people",
"communication"
]
}
+18
View File
@@ -0,0 +1,18 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M12.925 3.047a9 9 0 017.616 6.11" />
<path d="M13 22a2 2 0 012-2h4a2 2 0 012 2" />
<path d="M3 12a2 2 0 012-2h4a2 2 0 012 2" />
<path d="M3.889 15.9a9 9 0 005.247 4.632" />
<circle cx="17" cy="14" r="2" />
<circle cx="7" cy="4" r="2" />
</svg>

After

Width:  |  Height:  |  Size: 466 B

+35
View File
@@ -0,0 +1,35 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"rrod497",
"karsa-mistmere"
],
"use-cases": [
"Representing collaborative workspaces in multi-user apps",
"Sharing ownership of documents or content",
"Indicating peer-to-peer system architecture",
"Scheduling team meetings and gatherings"
],
"tags": [
"group",
"people",
"collaboration",
"users",
"team",
"communication",
"cooperative",
"workspace",
"peer-to-peer",
"p2p",
"shared",
"delegation",
"handoff",
"coauthor",
"profiles"
],
"categories": [
"account",
"people",
"communication"
]
}
+18
View File
@@ -0,0 +1,18 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M20.453 8.911a9 9 0 00-6.696-5.738" />
<path d="M21 22a4 4 0 00-8 0" />
<path d="M3 12a4 4 0 017.963-.543" />
<path d="M3.889 15.9a9 9 0 005.247 4.632" />
<circle cx="17" cy="15" r="3" />
<circle cx="7" cy="5" r="3" />
</svg>

After

Width:  |  Height:  |  Size: 448 B

+43
View File
@@ -0,0 +1,43 @@
{
"$schema": "../icon.schema.json",
"contributors": [
"benhaube",
"colebemis",
"csandman",
"ericfennis",
"jguddas"
],
"use-cases": [
"Representing a secured Wi-Fi network",
"Indicating an SSID requires a password to authenticate",
"Showing a locked wifi network in a list of available networks",
"Indicating a password-protected guest network",
"Denoting an encrypted hotspot or mobile tethering connection",
"Labelling wireless security settings in router or network apps"
],
"tags": [
"admin",
"connection",
"secure",
"security",
"signal",
"network",
"password",
"wireless",
"hotspot",
"encrypted",
"locked",
"private",
"ssid",
"guest",
"router",
"access",
"authentication",
"protected"
],
"categories": [
"connectivity",
"devices",
"security"
]
}
+17
View File
@@ -0,0 +1,17 @@
<svg
xmlns="http://www.w3.org/2000/svg"
width="24"
height="24"
viewBox="0 0 24 24"
fill="none"
stroke="currentColor"
stroke-width="2"
stroke-linecap="round"
stroke-linejoin="round"
>
<path d="M2 8.82a15 15 0 0120 0" />
<path d="M20 16v-2a2 2 0 00-4 0v2" />
<path d="M5 12.859a10 10 0 018.436-2.756" />
<path d="M8.5 16.429a5 5 0 011.794-1.13" />
<rect x="14" y="16" width="8" height="5" rx="1" />
</svg>

After

Width:  |  Height:  |  Size: 432 B

@@ -11,14 +11,14 @@
},
"dependencies": {
"lucide-react": "workspace:*",
"next": "16.3.6",
"next": "16.3.8",
"react": "19.3.0",
"react-dom": "19.3.0"
},
"devDependencies": {
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@vitejs/plugin-react": "^6.1.1",
"@vitejs/plugin-react": "^6.1.2",
"@vitest/browser-playwright": "5.0.3",
"typescript": "^6.0.3",
"vite": "^8.3.2",
@@ -23,7 +23,7 @@
"@types/node": "^26.1.1",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@vitejs/plugin-react": "^6.1.1",
"@vitejs/plugin-react": "^6.1.2",
"@vitest/browser-playwright": "5.0.3",
"typescript": "^6.0.3",
"vite": "^8.3.2",
@@ -19,7 +19,7 @@
"@tanstack/router-plugin": "1.168.35",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@vitejs/plugin-react": "^6.1.1",
"@vitejs/plugin-react": "^6.1.2",
"@vitest/browser-playwright": "5.0.3",
"typescript": "^6.0.3",
"vite": "^8.3.2",
@@ -20,7 +20,7 @@
"@types/node": "^26.1.1",
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@vitejs/plugin-react": "^6.1.1",
"@vitejs/plugin-react": "^6.1.2",
"@vitest/browser-playwright": "5.0.3",
"typescript": "^6.0.3",
"vite": "^8.3.2",
+1 -1
View File
@@ -17,7 +17,7 @@
"devDependencies": {
"@types/react": "19.3.0",
"@types/react-dom": "19.3.0",
"@vitejs/plugin-react": "^6.1.1",
"@vitejs/plugin-react": "^6.1.2",
"@vitest/browser-playwright": "5.0.3",
"playwright": "1.58.2",
"typescript": "^6.0.3",

Some files were not shown because too many files have changed in this diff Show More