diff --git a/.github/workflows/close-issue-with-banned-phrases.yml b/.github/workflows/close-issue-with-banned-phrases.yml index 135b5c6c28d..39bcf8aae41 100644 --- a/.github/workflows/close-issue-with-banned-phrases.yml +++ b/.github/workflows/close-issue-with-banned-phrases.yml @@ -16,7 +16,7 @@ jobs: - name: Check for blocked phrases in issue title run: | ISSUE_TITLE=$(jq -r '.issue.title' "$GITHUB_EVENT_PATH") - BLOCKED_PHRASES=("twitter" "whatsapp" "logo" "google" "tiktok" "facebook" "slack" "discord") + BLOCKED_PHRASES=("twitter" "whatsapp" "logo" "google" "tiktok" "facebook" "slack" "discord" "bluesky") # Check title and body for blocked phrases for PHRASE in "${BLOCKED_PHRASES[@]}" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ebce76e4134..d2902957f55 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -127,7 +127,7 @@ When adding new features to for example the icon component for a framework. It i ### Local Testing -To test changes in a local project, you can use `yarn link`, `npm link` or `pnpm link` to link the package. Before you do this make sure you builded the package first. +To test changes in a local project, you can use `yarn link`, `npm link`, `bun link` or `pnpm link` to link the package. Before you do this make sure you builded the package first. ```sh # in packages/lucide-react diff --git a/README.md b/README.md index 6076562c333..c45b434e3e2 100644 --- a/README.md +++ b/README.md @@ -8,185 +8,39 @@

license - npm package - figma installs + figma installs build status discord chat

+

+ Icons + · + Guide + · + Packages + · + License + · + Showcase +

# Lucide -Community-run fork of [Feather Icons](https://github.com/feathericons/feather), open for anyone to contribute icons. - -It began after growing dissatisfaction with the [Feather Icons](https://github.com/feathericons/feather) project moderation. With over 300+ open issues and over 100+ open PRs, the Feather Icons project has been abandoned. This unfortunately means that hundreds of developers and designers wasted their time contributing to Feather Icons with no chance of PRs being accepted. - -Lucide is trying to expand the icon set as much as possible while staying faithful to the original simplistic design language. We do this as a community of devs and designers and hope that you'll join us! - -### Why choose Lucide over Feather Icons - -- More icons to work with: Lucide already has hundreds of icons more than Feather does. -- Official libraries and integrations with popular frameworks and design tools. -- Well maintained code base. -- Active community, regularly growing and improving the set. - -## Table of Contents - -- [Usage](#usage) - - [Web](#web) - - [React](#react) - - [React Native](#react-native) - - [Vue 2](#vue-2) - - [Vue 3](#vue-3) - - [Angular](#angular) - - [Preact](#preact) - - [Static (svg sprite, font, icons ..)](#static-svg-sprite-font-icons-) - - [Figma](#figma) - - [Laravel](#laravel) - - [Svelte](#svelte) - - [Solid](#solid) - - [Hyva](#hyva) - - [Eleventy](#eleventy) -- [Contributing](#contributing) -- [Community](#community) -- [License](#license) -- [Credits](#credits) -- [Sponsors](#sponsors) - -## Usage - -At its core, Lucide is a collection of [SVG](https://svgontheweb.com/#svg) files. This means that you can use Lucide icons in all the same ways you can use SVGs (e.g. `img`, `background-image`, `inline`, `object`, `embed`, `iframe`). Here's a helpful article detailing the many ways SVGs can be used on the web: [SVG on the Web – Implementation Options](https://svgontheweb.com/#implementation) - -The following are additional ways you can use Lucide. -With the Javascript library you can easily incorporate the icon you want in your webpage. - -### Web - -Implementation of the lucide icon library for web applications. - -```sh -npm install lucide -``` - -or - -```sh -yarn add lucide -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide#lucide). - -### React - -Implementation of the lucide icon library for react applications. - -```sh -yarn add lucide-react -``` - -or - -```sh -npm install lucide-react -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-react#lucide-react). - -### React Native - -Implementation of the lucide icon library for React Native applications. - -```sh -yarn add lucide-react-native -``` - -or - -```sh -npm install lucide-react-native -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-react-native#lucide-react-native). - -### Vue 2 - -Implementation of the lucide icon library for vue applications. - -```sh -yarn add lucide-vue -``` - -or - -```sh -npm install lucide-vue -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-vue#lucide-vue). - -### Vue 3 - -Implementation of the lucide icon library for vue applications. - -```sh -yarn add lucide-vue-next -``` - -or - -```sh -npm install lucide-vue-next -``` +Lucide is an open-source icon library that provides 1000+ vector (svg) files for displaying icons and symbols in digital and non-digital projects. The library aims to make it easier for designers and developers to incorporate icons into their projects by providing several official [packages](https://lucide.dev/packages) to make it easier to use these icons in your project. -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-vue-next#lucide-vue-next). +## Packages -### Angular - -```sh -yarn add lucide-angular -``` - -or - -```sh -npm install lucide-angular -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-angular#lucide-angular). - -### Preact - -Implementation of the lucide icon library for preact applications. - -```sh -yarn add lucide-preact -``` - -or - -```sh -npm install lucide-preact -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-preact#lucide-preact). - -### Static (svg sprite, font, icons ..) - -Assets: -[Font Files](https://github.com/lucide-icons/lucide/releases/latest) -[SVG Files](https://github.com/lucide-icons/lucide/releases/latest) -[SVG Sprite](https://cdn.jsdelivr.net/npm/lucide-static@latest/sprite.svg) - -NPM package - -```sh -yarn add lucide-static -``` - -or - -```sh -npm install lucide-static -``` +| | Package | Version & Downloads | Links | +| --- | --- | --- | --- | +| JS logo | `lucide` | [![npm](https://img.shields.io/npm/v/lucide)](https://www.npmjs.com/package/lucide) ![NPM Downloads](https://img.shields.io/npm/dw/lucide) | [Docs](https://lucide.dev/guide/packages/lucide) [Source](./packages/lucide) | +| React logo | `lucide-react` | [![npm](https://img.shields.io/npm/v/lucide-react)](https://www.npmjs.com/package/lucide-react) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-react) | [Docs](https://lucide.dev/guide/packages/lucide-react) [Source](./packages/lucide-react) | +| Vue logo | `lucide-vue-next` | [![npm](https://img.shields.io/npm/v/lucide-vue-next)](https://www.npmjs.com/package/lucide-vue-next) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-vue-next) | [Docs](https://lucide.dev/guide/packages/lucide-vue-next) [Source](./packages/lucide-vue-next) | +| Svelte logo | `lucide-svelte` | [![npm](https://img.shields.io/npm/v/lucide-svelte)](https://www.npmjs.com/package/lucide-svelte) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-svelte) | [Docs](https://lucide.dev/guide/packages/lucide-svelte) [Source](./packages/lucide-svelte) | +| Solid logo | `lucide-solid` | [![npm](https://img.shields.io/npm/v/lucide-solid)](https://www.npmjs.com/package/lucide-solid) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-solid) | [Docs](https://lucide.dev/guide/packages/lucide-solid) [Source](./packages/lucide-solid) | +| Preact logo | `lucide-preact` | [![npm](https://img.shields.io/npm/v/lucide-preact)](https://www.npmjs.com/package/lucide-preact) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-preact) | [Docs](https://lucide.dev/guide/packages/lucide-preact) [Source](./packages/lucide-preact) | +| React Native logo | `lucide-react-native` | [![npm](https://img.shields.io/npm/v/lucide-react-native)](https://www.npmjs.com/package/lucide-react-native) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-react-native) | [Docs](https://lucide.dev/guide/packages/lucide-react-native) [Source](./packages/lucide-react-native) | +| Angular logo | `lucide-angular` | [![npm](https://img.shields.io/npm/v/lucide-angular)](https://www.npmjs.com/package/lucide-angular) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-angular) | [Docs](https://lucide.dev/guide/packages/lucide-angular) [Source](./packages/lucide-angular) | +| SVG logo | `lucide-static` | [![npm](https://img.shields.io/npm/v/lucide-static)](https://www.npmjs.com/package/lucide-static) ![NPM Downloads](https://img.shields.io/npm/dw/lucide-static) | [Docs](https://lucide.dev/guide/packages/lucide-static) [Source](./packages/lucide-static) | ### Figma @@ -196,68 +50,6 @@ Visit [Figma community page](https://www.figma.com/community/plugin/939567362549 Figma Lucide Cover -### Laravel - -Implementation of Lucide icon's using `blade-icons` for Laravel based projects. - -```sh -composer require mallardduck/blade-lucide-icons -``` - -For more details, see the [documentation](https://github.com/mallardduck/blade-lucide-icons/blob/main/README.md). - -### Svelte - -Implementation of the lucide icon library for Svelte applications. - -```sh -yarn add lucide-svelte -``` - -or - -```sh -npm install lucide-svelte -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-svelte#lucide-svelte). - -### Solid - -Implementation of the lucide icon library for solid applications. - -```sh -yarn add lucide-solid -``` - -or - -```sh -npm install lucide-solid -``` - -For more details, see the [documentation](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-solid#lucide-solid). - -### Hyva - -Implementation of Lucide icon's using Hyvä's svg php viewmodal to render icons for Magento 2 Hyva theme based projects. - -```sh -composer require siteation/magento2-hyva-icons-lucide -``` - -For more details, see the [documentation](https://github.com/Siteation/magento2-hyva-icons-lucide/blob/main/README.md). - -### Eleventy - -Using this plugin, Eleventy projects can incorporate Lucide icons. it makes it simple to use Lucide icons into your themes via shortcodes, improving your website's overall usability and visual appeal. - -```sh -npm install @grimlink/eleventy-plugin-lucide-icons -``` - -For more details, see the [documentation](https://github.com/GrimLink/eleventy-plugin-lucide-icons/blob/main/README.md). - ## Contributing For more info on how to contribute please see the [contribution guidelines](https://github.com/lucide-icons/lucide/blob/main/CONTRIBUTING.md). @@ -287,6 +79,7 @@ Thank you to all the people who contributed to Lucide! DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/docs/.vitepress/data/packageData.json b/docs/.vitepress/data/packageData.json index 613ed60e793..c4a62adf164 100644 --- a/docs/.vitepress/data/packageData.json +++ b/docs/.vitepress/data/packageData.json @@ -31,24 +31,8 @@ } ] }, - "lucide-vue": { - "order": 2, - "icon": "vue", - "shields": [ - { - "alt": "npm", - "src": "https://img.shields.io/npm/v/lucide-vue", - "href": "https://www.npmjs.com/package/lucide-vue" - }, - { - "alt": "npm", - "src": "https://img.shields.io/npm/dw/lucide-vue", - "href": "https://www.npmjs.com/package/lucide-vue" - } - ] - }, "lucide-vue-next": { - "order": 3, + "order": 2, "icon": "vue-next", "shields": [ { @@ -64,7 +48,7 @@ ] }, "lucide-svelte": { - "order": 4, + "order": 3, "icon": "svelte", "shields": [ { @@ -95,24 +79,8 @@ } ] }, - "lucide-preact": { - "order": 5, - "icon": "preact", - "shields": [ - { - "alt": "npm", - "src": "https://img.shields.io/npm/v/lucide-preact", - "href": "https://www.npmjs.com/package/lucide-preact" - }, - { - "alt": "npm", - "src": "https://img.shields.io/npm/dw/lucide-preact", - "href": "https://www.npmjs.com/package/lucide-preact" - } - ] - }, "lucide-react-native": { - "order": 6, + "order": 5, "icon": "react-native", "shields": [ { @@ -128,7 +96,7 @@ ] }, "lucide-angular": { - "order": 7, + "order": 6, "icon": "angular", "shields": [ { @@ -143,6 +111,22 @@ } ] }, + "lucide-preact": { + "order": 7, + "icon": "preact", + "shields": [ + { + "alt": "npm", + "src": "https://img.shields.io/npm/v/lucide-preact", + "href": "https://www.npmjs.com/package/lucide-preact" + }, + { + "alt": "npm", + "src": "https://img.shields.io/npm/dw/lucide-preact", + "href": "https://www.npmjs.com/package/lucide-preact" + } + ] + }, "lucide-static": { "order": 8, "icon": "svg", diff --git a/docs/.vitepress/sidebar.ts b/docs/.vitepress/sidebar.ts index 5833648f071..ad796b96267 100644 --- a/docs/.vitepress/sidebar.ts +++ b/docs/.vitepress/sidebar.ts @@ -72,10 +72,6 @@ const sidebar: UserConfig['themeConfig']['sidebar'] = { text: 'Lucide React', link: '/guide/packages/lucide-react', }, - { - text: 'Lucide React Native', - link: '/guide/packages/lucide-react-native', - }, { text: 'Lucide Vue', link: '/guide/packages/lucide-vue-next', @@ -89,13 +85,17 @@ const sidebar: UserConfig['themeConfig']['sidebar'] = { link: '/guide/packages/lucide-solid', }, { - text: 'Lucide Preact', - link: '/guide/packages/lucide-preact', + text: 'Lucide React Native', + link: '/guide/packages/lucide-react-native', }, { text: 'Lucide Angular', link: '/guide/packages/lucide-angular', }, + { + text: 'Lucide Preact', + link: '/guide/packages/lucide-preact', + }, { text: 'Lucide Static', link: '/guide/packages/lucide-static', diff --git a/docs/.vitepress/theme/components/home/HomeHeroBefore.data.ts b/docs/.vitepress/theme/components/home/HomeHeroBefore.data.ts index e235048e31c..76b2c3a6d87 100644 --- a/docs/.vitepress/theme/components/home/HomeHeroBefore.data.ts +++ b/docs/.vitepress/theme/components/home/HomeHeroBefore.data.ts @@ -9,7 +9,7 @@ export default { } return null; }) - .then((res) => res.tag_name); + .then((res) => res?.tag_name); return { version, diff --git a/docs/.vitepress/theme/components/home/HomeIconCustomizer.vue b/docs/.vitepress/theme/components/home/HomeIconCustomizer.vue index 14dc7755034..97654136633 100644 --- a/docs/.vitepress/theme/components/home/HomeIconCustomizer.vue +++ b/docs/.vitepress/theme/components/home/HomeIconCustomizer.vue @@ -171,16 +171,14 @@ watch(absoluteStrokeWidth, (enabled) => { margin-top: 32px; padding: 0; background: none; - max-width: 280px; } @media (min-width: 640px) { - .card { display: grid; grid-template-columns: 8fr 10fr; } -/* + /* .card-column { flex: 1; } */ diff --git a/docs/.vitepress/theme/components/icons/IconShowcase.vue b/docs/.vitepress/theme/components/icons/IconShowcase.vue new file mode 100644 index 00000000000..a3a9cc25f75 --- /dev/null +++ b/docs/.vitepress/theme/components/icons/IconShowcase.vue @@ -0,0 +1,438 @@ + + + + + diff --git a/docs/.vitepress/theme/components/icons/RelatedIcons.vue b/docs/.vitepress/theme/components/icons/RelatedIcons.vue index 47f470d7ef9..41af54f721b 100644 --- a/docs/.vitepress/theme/components/icons/RelatedIcons.vue +++ b/docs/.vitepress/theme/components/icons/RelatedIcons.vue @@ -1,29 +1,20 @@ + + diff --git a/docs/public/package-logos/lucide-angular.svg b/docs/public/package-logos/lucide-angular.svg index 3ffd2d6cbfc..fc6146d7c76 100644 --- a/docs/public/package-logos/lucide-angular.svg +++ b/docs/public/package-logos/lucide-angular.svg @@ -1,27 +1,30 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide-preact.svg b/docs/public/package-logos/lucide-preact.svg index 98a2227a6b9..4b8edaed14a 100644 --- a/docs/public/package-logos/lucide-preact.svg +++ b/docs/public/package-logos/lucide-preact.svg @@ -1,15 +1,18 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide-react-native.svg b/docs/public/package-logos/lucide-react-native.svg index 5400d4ad0f8..59ac28595ee 100644 --- a/docs/public/package-logos/lucide-react-native.svg +++ b/docs/public/package-logos/lucide-react-native.svg @@ -1,26 +1,29 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide-react.svg b/docs/public/package-logos/lucide-react.svg index 2e638d272c8..9c1fcdd8ee0 100644 --- a/docs/public/package-logos/lucide-react.svg +++ b/docs/public/package-logos/lucide-react.svg @@ -1,15 +1,18 @@ - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide-solid.svg b/docs/public/package-logos/lucide-solid.svg index 21304bd454c..4e90cc89d78 100644 --- a/docs/public/package-logos/lucide-solid.svg +++ b/docs/public/package-logos/lucide-solid.svg @@ -1,39 +1,42 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide-static.svg b/docs/public/package-logos/lucide-static.svg index 9dfa9699260..b19bf1d6c0d 100644 --- a/docs/public/package-logos/lucide-static.svg +++ b/docs/public/package-logos/lucide-static.svg @@ -1,16 +1,19 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide-svelte.svg b/docs/public/package-logos/lucide-svelte.svg index 4ab04e88d5e..6f2fc235291 100644 --- a/docs/public/package-logos/lucide-svelte.svg +++ b/docs/public/package-logos/lucide-svelte.svg @@ -1,13 +1,16 @@ - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide-vue.svg b/docs/public/package-logos/lucide-vue.svg index 6a21dbb8ad0..76603434a88 100644 --- a/docs/public/package-logos/lucide-vue.svg +++ b/docs/public/package-logos/lucide-vue.svg @@ -1,13 +1,16 @@ - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/docs/public/package-logos/lucide.svg b/docs/public/package-logos/lucide.svg index 8c2a462e021..52e52c82080 100644 --- a/docs/public/package-logos/lucide.svg +++ b/docs/public/package-logos/lucide.svg @@ -1,13 +1,16 @@ - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/docs/public/sponsors/pdfme.svg b/docs/public/sponsors/pdfme.svg new file mode 100644 index 00000000000..b665b8a32a3 --- /dev/null +++ b/docs/public/sponsors/pdfme.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/icons/bath.json b/icons/bath.json index 5059c9e62ac..a82e427a6ba 100644 --- a/icons/bath.json +++ b/icons/bath.json @@ -2,7 +2,8 @@ "$schema": "../icon.schema.json", "contributors": [ "karsa-mistmere", - "ericfennis" + "ericfennis", + "jamiemlaw" ], "tags": [ "amenities", diff --git a/icons/bath.svg b/icons/bath.svg index e917352690c..a52407ecbae 100644 --- a/icons/bath.svg +++ b/icons/bath.svg @@ -9,9 +9,9 @@ stroke-linecap="round" stroke-linejoin="round" > - - - - - + + + + + diff --git a/icons/calendar-sync.json b/icons/calendar-sync.json new file mode 100644 index 00000000000..7699c84b4a4 --- /dev/null +++ b/icons/calendar-sync.json @@ -0,0 +1,30 @@ +{ + "$schema": "../icon.schema.json", + "contributors": [ + "danielbayley", + "jguddas", + "karsa-mistmere", + "chessurisme" + ], + "tags": [ + "repeat", + "refresh", + "reconnect", + "transfer", + "backup", + "date", + "month", + "year", + "event", + "subscribe", + "recurring", + "schedule", + "reminder", + "automatic", + "auto" + ], + "categories": [ + "arrows", + "time" + ] +} diff --git a/icons/calendar-sync.svg b/icons/calendar-sync.svg new file mode 100644 index 00000000000..a55c758f6b9 --- /dev/null +++ b/icons/calendar-sync.svg @@ -0,0 +1,20 @@ + + + + + + + + + + diff --git a/icons/cloud-alert.json b/icons/cloud-alert.json new file mode 100644 index 00000000000..19b6c593129 --- /dev/null +++ b/icons/cloud-alert.json @@ -0,0 +1,23 @@ +{ + "$schema": "../icon.schema.json", + "contributors": [ + "colebemis", + "csandman", + "ericfennis", + "karsa-mistmere", + "lscheibel" + ], + "tags": [ + "weather", + "danger", + "warning", + "alert", + "error", + "sync", + "network", + "exclamation" + ], + "categories": [ + "development" + ] +} diff --git a/icons/cloud-alert.svg b/icons/cloud-alert.svg new file mode 100644 index 00000000000..53fc4f4a72f --- /dev/null +++ b/icons/cloud-alert.svg @@ -0,0 +1,15 @@ + + + + + diff --git a/icons/cross.svg b/icons/cross.svg index c0eb3007f11..fddf3f28934 100644 --- a/icons/cross.svg +++ b/icons/cross.svg @@ -9,5 +9,5 @@ stroke-linecap="round" stroke-linejoin="round" > - + diff --git a/icons/drill.json b/icons/drill.json index e676bf3e6bc..6669ad03a61 100644 --- a/icons/drill.json +++ b/icons/drill.json @@ -1,7 +1,8 @@ { "$schema": "../icon.schema.json", "contributors": [ - "danielbayley" + "danielbayley", + "jguddas" ], "tags": [ "power", diff --git a/icons/drill.svg b/icons/drill.svg index b20ba5dad33..330d2213a85 100644 --- a/icons/drill.svg +++ b/icons/drill.svg @@ -9,11 +9,10 @@ stroke-linecap="round" stroke-linejoin="round" > - - + + + - - diff --git a/icons/equal-approximately.json b/icons/equal-approximately.json new file mode 100644 index 00000000000..e40a9d62196 --- /dev/null +++ b/icons/equal-approximately.json @@ -0,0 +1,15 @@ +{ + "$schema": "../icon.schema.json", + "contributors": [ + "ksk3110" + ], + "tags": [ + "about", + "calculate", + "maths", + "operater" + ], + "categories": [ + "maths" + ] +} diff --git a/icons/equal-approximately.svg b/icons/equal-approximately.svg new file mode 100644 index 00000000000..cedc57c64cf --- /dev/null +++ b/icons/equal-approximately.svg @@ -0,0 +1,14 @@ + + + + diff --git a/icons/grid-2x2.json b/icons/grid-2x2.json index acf114b0187..625f93bb628 100644 --- a/icons/grid-2x2.json +++ b/icons/grid-2x2.json @@ -18,7 +18,9 @@ "distance", "surface area", "square meter", - "acre" + "acre", + "window", + "skylight" ], "categories": [ "text", diff --git a/icons/grid-2x2.svg b/icons/grid-2x2.svg index eb7f476bdca..097eb5c22ba 100644 --- a/icons/grid-2x2.svg +++ b/icons/grid-2x2.svg @@ -9,7 +9,7 @@ stroke-linecap="round" stroke-linejoin="round" > - - + + diff --git a/icons/hard-hat.svg b/icons/hard-hat.svg index 50056a6f235..106926d6996 100644 --- a/icons/hard-hat.svg +++ b/icons/hard-hat.svg @@ -9,8 +9,8 @@ stroke-linecap="round" stroke-linejoin="round" > - - + + diff --git a/icons/heading-4.json b/icons/heading-4.json index 6783030613d..582870e1906 100644 --- a/icons/heading-4.json +++ b/icons/heading-4.json @@ -1,7 +1,8 @@ { "$schema": "../icon.schema.json", "contributors": [ - "ericfennis" + "ericfennis", + "jguddas" ], "tags": [ "h4", diff --git a/icons/heading-4.svg b/icons/heading-4.svg index 2f6cc2b00d4..ab9f59a2875 100644 --- a/icons/heading-4.svg +++ b/icons/heading-4.svg @@ -9,9 +9,9 @@ stroke-linecap="round" stroke-linejoin="round" > - - - + + + diff --git a/icons/image-upscale.json b/icons/image-upscale.json new file mode 100644 index 00000000000..3790fbfdf2e --- /dev/null +++ b/icons/image-upscale.json @@ -0,0 +1,20 @@ +{ + "$schema": "../icon.schema.json", + "contributors": [ + "llaenowyd", + "mishkaio", + "ericfennis", + "karsa-mistmere", + "jguddas" + ], + "tags": [ + "resize", + "picture", + "sharpen", + "increase" + ], + "categories": [ + "photography", + "multimedia" + ] +} diff --git a/icons/image-upscale.svg b/icons/image-upscale.svg new file mode 100644 index 00000000000..5170d185514 --- /dev/null +++ b/icons/image-upscale.svg @@ -0,0 +1,20 @@ + + + + + + + + + + diff --git a/icons/laptop-minimal-check.json b/icons/laptop-minimal-check.json new file mode 100644 index 00000000000..4f8ab5f7939 --- /dev/null +++ b/icons/laptop-minimal-check.json @@ -0,0 +1,22 @@ +{ + "$schema": "../icon.schema.json", + "contributors": [ + "ericfennis", + "jguddas" + ], + "tags": [ + "computer", + "screen", + "remote", + "success", + "done", + "todo", + "tick", + "complete", + "task" + ], + "categories": [ + "devices", + "notifications" + ] +} diff --git a/icons/laptop-minimal-check.svg b/icons/laptop-minimal-check.svg new file mode 100644 index 00000000000..8475d4eb8f0 --- /dev/null +++ b/icons/laptop-minimal-check.svg @@ -0,0 +1,15 @@ + + + + + diff --git a/icons/puzzle.json b/icons/puzzle.json index 91536ef3539..97d095abd4c 100644 --- a/icons/puzzle.json +++ b/icons/puzzle.json @@ -2,7 +2,8 @@ "$schema": "../icon.schema.json", "contributors": [ "karsa-mistmere", - "ericfennis" + "ericfennis", + "jamiemlaw" ], "tags": [ "component", diff --git a/icons/puzzle.svg b/icons/puzzle.svg index 11822cf46e0..bc7ea8e9e50 100644 --- a/icons/puzzle.svg +++ b/icons/puzzle.svg @@ -9,5 +9,5 @@ stroke-linecap="round" stroke-linejoin="round" > - + diff --git a/icons/scale-3d.svg b/icons/scale-3d.svg index ed4cc25d014..300cc24e89d 100644 --- a/icons/scale-3d.svg +++ b/icons/scale-3d.svg @@ -9,8 +9,8 @@ stroke-linecap="round" stroke-linejoin="round" > + + - - diff --git a/icons/school.svg b/icons/school.svg index 3347d8aa52a..1b3d7099a85 100644 --- a/icons/school.svg +++ b/icons/school.svg @@ -10,9 +10,9 @@ stroke-linejoin="round" > - + - + diff --git a/icons/ship.json b/icons/ship.json index 748f99d66d6..5ff4dc1d2ae 100644 --- a/icons/ship.json +++ b/icons/ship.json @@ -1,7 +1,8 @@ { "$schema": "../icon.schema.json", "contributors": [ - "karsa-mistmere" + "karsa-mistmere", + "jguddas" ], "tags": [ "boat", diff --git a/icons/ship.svg b/icons/ship.svg index c9c6f8d228c..ea5640e9bab 100644 --- a/icons/ship.svg +++ b/icons/ship.svg @@ -9,9 +9,9 @@ stroke-linecap="round" stroke-linejoin="round" > - - - - + + + + diff --git a/icons/shuffle.json b/icons/shuffle.json index 3cdd6484a03..b2d5c96105f 100644 --- a/icons/shuffle.json +++ b/icons/shuffle.json @@ -4,7 +4,8 @@ "colebemis", "ericfennis", "danielbayley", - "karsa-mistmere" + "karsa-mistmere", + "jguddas" ], "tags": [ "music", diff --git a/icons/shuffle.svg b/icons/shuffle.svg index 7b5e482c36b..0abb32419f5 100644 --- a/icons/shuffle.svg +++ b/icons/shuffle.svg @@ -9,9 +9,9 @@ stroke-linecap="round" stroke-linejoin="round" > - - - - + + + + diff --git a/icons/toilet.json b/icons/toilet.json new file mode 100644 index 00000000000..e24f84357e9 --- /dev/null +++ b/icons/toilet.json @@ -0,0 +1,19 @@ +{ + "$schema": "../icon.schema.json", + "contributors": [ + "EthanHazel", + "staffanmowitz", + "karsa-mistmere", + "jguddas" + ], + "tags": [ + "toilet", + "potty", + "bathroom", + "washroom" + ], + "categories": [ + "devices", + "home" + ] +} diff --git a/icons/toilet.svg b/icons/toilet.svg new file mode 100644 index 00000000000..9ce94841fba --- /dev/null +++ b/icons/toilet.svg @@ -0,0 +1,14 @@ + + + + \ No newline at end of file diff --git a/icons/vegan.svg b/icons/vegan.svg index 113cbc23df3..230803a3d1b 100644 --- a/icons/vegan.svg +++ b/icons/vegan.svg @@ -9,7 +9,7 @@ stroke-linecap="round" stroke-linejoin="round" > + + - - diff --git a/icons/venetian-mask.json b/icons/venetian-mask.json index 94179a04c52..989416549b8 100644 --- a/icons/venetian-mask.json +++ b/icons/venetian-mask.json @@ -2,7 +2,8 @@ "$schema": "../icon.schema.json", "contributors": [ "karsa-mistmere", - "ericfennis" + "ericfennis", + "jguddas" ], "tags": [ "mask", diff --git a/icons/venetian-mask.svg b/icons/venetian-mask.svg index a1db42e6b99..97a7ea0723e 100644 --- a/icons/venetian-mask.svg +++ b/icons/venetian-mask.svg @@ -9,7 +9,7 @@ stroke-linecap="round" stroke-linejoin="round" > - - - + + + diff --git a/packages/lucide-angular/README.md b/packages/lucide-angular/README.md index 3779e38bb91..729588e2d0a 100644 --- a/packages/lucide-angular/README.md +++ b/packages/lucide-angular/README.md @@ -1,30 +1,52 @@

- - Lucide Angular - Implementation of the lucide icon library for angular applications. - - - Lucide Angular - Implementation of the lucide icon library for angular applications. + + Lucide icon library for Angular applications.

+

+Lucide icon library for Angular applications. +

+ +
+ + [![npm](https://img.shields.io/npm/v/lucide-angular?color=blue)](https://www.npmjs.com/package/lucide-angular) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-angular) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

+ # Lucide Angular Implementation of the lucide icon library for angular applications. -> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). - ## Installation -```bash -yarn add lucide-angular +```sh +pnpm add lucide-angular ``` -or - -```bash +```sh npm install lucide-angular ``` +```sh +yarn add lucide-angular +``` + +```sh +bun add lucide-angular +``` + ## Documentation For full documentation, visit [lucide.dev](https://lucide.dev/guide/packages/lucide-angular) @@ -45,6 +67,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-angular/package.json b/packages/lucide-angular/package.json index 565c5a6ebd3..8a144e9e0b5 100644 --- a/packages/lucide-angular/package.json +++ b/packages/lucide-angular/package.json @@ -74,7 +74,7 @@ "zone.js": "~0.11.4" }, "peerDependencies": { - "@angular/common": "13.x - 18.x", - "@angular/core": "13.x - 18.x" + "@angular/common": "13.x - 19.x", + "@angular/core": "13.x - 19.x" } } diff --git a/packages/lucide-preact/README.md b/packages/lucide-preact/README.md index 05d37d5d288..0bca38c2793 100644 --- a/packages/lucide-preact/README.md +++ b/packages/lucide-preact/README.md @@ -1,30 +1,52 @@

- - Lucide Preact - Implementation of the lucide icon library for preact applications. - - - Lucide Preact - Implementation of the lucide icon library for preact applications. + + Lucide icon library for Preact applications.

-# Lucide Preact +

+Lucide icon library for Preact applications. +

+ +
-Implementation of the lucide icon library for preact applications. + [![npm](https://img.shields.io/npm/v/lucide-preact?color=blue)](https://www.npmjs.com/package/lucide-preact) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-preact) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

+ +# Lucide Preact -> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). +Implementation of the lucide icon library for Preact applications. ## Installation ```sh -yarn add lucide-preact +pnpm add lucide-preact ``` -or - ```sh npm install lucide-preact ``` +```sh +yarn add lucide-preact +``` + +```sh +bun add lucide-preact +``` + ## Documentation For full documentation, visit [lucide.dev](https://lucide.dev/guide/packages/lucide-preact) @@ -45,6 +67,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-react-native/README.md b/packages/lucide-react-native/README.md index f82945d4b28..eef0a6322c2 100644 --- a/packages/lucide-react-native/README.md +++ b/packages/lucide-react-native/README.md @@ -1,31 +1,50 @@

- - Lucide React Native - Implementation of the lucide icon library for React Native applications. - - - Lucide React Native - Implementation of the lucide icon library for React Native applications. + + Lucide icon library for React Native applications.

+

+Lucide icon library for React Native applications. +

+ +
+ + [![npm](https://img.shields.io/npm/v/lucide-react-native?color=blue)](https://www.npmjs.com/package/lucide-react-native) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-react-native) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

# Lucide React Native Implementation of the lucide icon library for React Native applications. -> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). - ## Installation -First, ensure that you have `react-native-svg` (version between 12 and 15) installed. Then, install the package: +```sh +pnpm add lucide-react-native +``` ```sh -yarn add lucide-react-native +npm install lucide-react-native ``` -or +```sh +yarn add lucide-react-native +``` ```sh -npm install lucide-react-native +bun add lucide-react-native ``` ## Documentation @@ -48,6 +67,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-react/README.md b/packages/lucide-react/README.md index ed816ec26c8..8d02efe9683 100644 --- a/packages/lucide-react/README.md +++ b/packages/lucide-react/README.md @@ -1,31 +1,52 @@

- - Lucide React - Implementation of the lucide icon library for react applications. - - - Lucide React - Implementation of the lucide icon library for react applications. + + Lucide icon library for React applications.

+

+Lucide icon library for React applications. +

-# Lucide React +
+ + [![npm](https://img.shields.io/npm/v/lucide-react?color=blue)](https://www.npmjs.com/package/lucide-react) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-react) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
-Implementation of the lucide icon library for react applications. +

+ About + · + Icons + · + Documentation + · + License +

+ +# Lucide React -> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). +Implementation of the lucide icon library for React applications. ## Installation ```sh -yarn add lucide-react +pnpm add lucide-react ``` -or - ```sh npm install lucide-react ``` +```sh +yarn add lucide-react +``` + +```sh +bun add lucide-react +``` + ## Documentation For full documentation, visit [lucide.dev](https://lucide.dev/guide/packages/lucide-react) @@ -46,6 +67,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-solid/README.md b/packages/lucide-solid/README.md index 88abae1be85..0c9a8a62f4e 100644 --- a/packages/lucide-solid/README.md +++ b/packages/lucide-solid/README.md @@ -1,31 +1,52 @@

- - Lucide Solid - Implementation of the lucide icon library for solid applications. - - - Lucide Solid - Implementation of the lucide icon library for solid applications. + + Lucide icon library for Solid applications.

+

+Lucide icon library for Solid applications. +

+ +
+ + [![npm](https://img.shields.io/npm/v/lucide-solid?color=blue)](https://www.npmjs.com/package/lucide-solid) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-solid) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

# Lucide Solid Implementation of the lucide icon library for solid applications. -> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). - ## Installation ```sh -yarn add lucide-solid +pnpm add lucide-solid ``` -or - ```sh npm install lucide-solid ``` +```sh +yarn add lucide-solid +``` + +```sh +bun add lucide-solid +``` + ## Documentation For full documentation, visit [lucide.dev](https://lucide.dev/guide/packages/lucide-solid) @@ -46,6 +67,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-static/README.md b/packages/lucide-static/README.md index e613619aa14..41f3434d2fe 100644 --- a/packages/lucide-static/README.md +++ b/packages/lucide-static/README.md @@ -1,12 +1,29 @@

- - Lucide Static - Implementation of the lucide icon library for web applications. - - - Lucide Static - Implementation of the lucide icon library for web applications. + + Lucide icon library with static assets for web applications

+

+Lucide icon library with static assets for web applications. +

+ +
+ + [![npm](https://img.shields.io/npm/v/lucide-static?color=blue)](https://www.npmjs.com/package/lucide-static) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-static) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

# Lucide Static @@ -28,16 +45,20 @@ This package is suitable for very specific use cases for example if you want to ## Installation -## Package Managers +```sh +pnpm add lucide-static +``` ```sh -yarn add lucide-static +npm install lucide-static ``` -or +```sh +yarn add lucide-static +``` ```sh -npm install lucide-static +bun add lucide-static ``` ## Documentation @@ -60,6 +81,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-svelte/README.md b/packages/lucide-svelte/README.md index 5d8fb60aa3e..6ca96ea77a3 100644 --- a/packages/lucide-svelte/README.md +++ b/packages/lucide-svelte/README.md @@ -1,31 +1,52 @@

- - Lucide Svelte - Implementation of the lucide icon library for svelte applications. - - - Lucide Svelte - Implementation of the lucide icon library for web applications. + + Lucide icon library for Svelte applications.

+

+Lucide icon library for Svelte applications. +

+ +
+ + [![npm](https://img.shields.io/npm/v/lucide-svelte?color=blue)](https://www.npmjs.com/package/lucide-svelte) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-svelte) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

# Lucide Svelte Implementation of the lucide icon library for svelte applications. -> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). - ## Installation ```sh -yarn add lucide-svelte +pnpm add lucide-svelte ``` -or - ```sh npm install lucide-svelte ``` +```sh +yarn add lucide-svelte +``` + +```sh +bun add lucide-svelte +``` + ## Documentation For full documentation, visit [lucide.dev](https://lucide.dev/guide/packages/lucide-svelte) @@ -46,6 +67,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-svelte/package.json b/packages/lucide-svelte/package.json index 6b4b4bcd4cb..c7d7975383b 100644 --- a/packages/lucide-svelte/package.json +++ b/packages/lucide-svelte/package.json @@ -36,7 +36,8 @@ }, "./icons/*": { "types": "./dist/icons/*.svelte.d.ts", - "svelte": "./dist/icons/*.svelte" + "svelte": "./dist/icons/*.js", + "default": "./dist/icons/*.js" } }, "typings": "dist/lucide-svelte.d.ts", @@ -48,7 +49,7 @@ "build": "pnpm clean && pnpm copy:license && pnpm build:icons && pnpm build:package && pnpm build:license", "copy:license": "cp ../../LICENSE ./LICENSE", "clean": "rm -rf dist && rm -rf stats && rm -rf ./src/icons/*.svelte && rm -f index.js", - "build:icons": "build-icons --output=./src --templateSrc=./scripts/exportTemplate.mjs --exportFileName=index.ts --iconFileExtension=.svelte --importImportFileExtension=.svelte --withAliases --aliasesFileExtension=.ts --aliasImportFileExtension=.svelte --pretty=false", + "build:icons": "build-icons --output=./src --templateSrc=./scripts/exportTemplate.mjs --exportFileName=index.ts --iconFileExtension=.svelte --importImportFileExtension=.svelte --separateIconFileExport --separateIconFileExportExtension=.ts --withAliases --aliasesFileExtension=.ts --separateAliasesFile --separateAliasesFileExtension=.ts --aliasImportFileExtension=.js --pretty=false", "build:package": "svelte-package --input ./src", "build:license": "node ./scripts/appendBlockComments.mjs", "test": "pnpm build:icons && vitest run", diff --git a/packages/lucide-svelte/scripts/license.mjs b/packages/lucide-svelte/scripts/license.mjs index 3c39a02b6f2..3ef4f0306c8 100644 --- a/packages/lucide-svelte/scripts/license.mjs +++ b/packages/lucide-svelte/scripts/license.mjs @@ -1,4 +1,4 @@ -import pkg from '../package.json' assert { type: 'json' }; +import pkg from '../package.json' with { type: 'json' }; export function getJSBanner() { return `/** diff --git a/packages/lucide-vue-next/README.md b/packages/lucide-vue-next/README.md index 933197ada66..ad4c3e7ed61 100644 --- a/packages/lucide-vue-next/README.md +++ b/packages/lucide-vue-next/README.md @@ -1,32 +1,52 @@

- - Lucide Vue Next - Implementation of the lucide icon library for Vue 3 applications. - - - Lucide Vue Next - Implementation of the lucide icon library for Vue 3 applications. + + Lucide icon library for Vue applications.

-# Lucide Vue Next +

+Lucide icon library for Vue applications. +

-Implementation of the lucide icon library for Vue 3 applications. +
-> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). + [![npm](https://img.shields.io/npm/v/lucide-vue-next?color=blue)](https://www.npmjs.com/package/lucide-vue-next) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-vue-next) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
-> :warning: This version of lucide is for Vue 3, For Vue 2 got to [lucide-vue](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-vue#lucide-vue) +

+ About + · + Icons + · + Documentation + · + License +

+ +# Lucide Vue + +Implementation of the lucide icon library for Vue 3 applications. ## Installation ```sh -yarn add lucide-vue-next +pnpm add lucide-vue-next ``` -or - ```sh npm install lucide-vue-next ``` +```sh +yarn add lucide-vue-next +``` + +```sh +bun add lucide-vue-next +``` + ## Documentation For full documentation, visit [lucide.dev](https://lucide.dev/guide/packages/lucide-vue-next) @@ -47,6 +67,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide-vue/README.md b/packages/lucide-vue/README.md index a795cd87eb5..447029d1593 100644 --- a/packages/lucide-vue/README.md +++ b/packages/lucide-vue/README.md @@ -1,32 +1,56 @@

- - Lucide Vue - Implementation of the lucide icon library for Vue applications. - - - Lucide Vue - Implementation of the lucide icon library for Vue applications. + + Lucide icon library for Vue 2 applications.

+

+Lucide icon library for Vue 2 applications. +

+ +
+ + [![npm](https://img.shields.io/npm/v/lucide-vue?color=blue)](https://www.npmjs.com/package/lucide-vue) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide-vue) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

+ # Lucide Vue Implementation of the lucide icon library for Vue applications. -> What is lucide? Read it [here](https://github.com/lucide-icons/lucide#what-is-lucide). - -> :warning: This version of lucide is for Vue 2, For Vue 3 got to [lucide-vue-next](https://github.com/lucide-icons/lucide/tree/main/packages/lucide-vue-next#lucide-vue-next) +> :rotating_light: +This package is deprecated. Vue 2 is EOF See [Announcement](https://v2.vuejs.org/eol/). Migrate to Vue 3. +::: ## Installation ```sh -yarn add lucide-vue +pnpm add lucide-vue ``` -or - ```sh npm install lucide-vue ``` +```sh +yarn add lucide-vue +``` + +```sh +bun add lucide-vue +``` + ## Documentation For full documentation, visit [lucide.dev](https://lucide.dev/guide/packages/lucide-vue) @@ -47,6 +71,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide/README.md b/packages/lucide/README.md index a50739998fe..d034cd2c160 100644 --- a/packages/lucide/README.md +++ b/packages/lucide/README.md @@ -1,30 +1,50 @@

- - Lucide - Implementation of the lucide icon library for web applications. - - - Lucide - Implementation of the lucide icon library for web applications. + + Lucide icon library for web applications.

+

+Lucide icon library for web applications. +

+ +
+ + [![npm](https://img.shields.io/npm/v/lucide?color=blue)](https://www.npmjs.com/package/lucide) + ![NPM Downloads](https://img.shields.io/npm/dw/lucide) + [![GitHub](https://img.shields.io/github/license/lucide-icons/lucide)](https://lucide.dev/license) +
+ +

+ About + · + Icons + · + Documentation + · + License +

+ # Lucide Implementation of the lucide icon library for web applications. ## Installation -### Package Managers +```sh +pnpm add lucide +``` ```sh npm install lucide ``` ```sh -pnpm install lucide +yarn add lucide ``` ```sh -yarn add lucide +bun add lucide ``` ### CDN @@ -57,6 +77,7 @@ Lucide is licensed under the ISC license. See [LICENSE](https://lucide.dev/licen DigitalOcean Referral Badge -### Awesome backer 🍺 +### Awesome backers 🍺 Scipress sponsor badge +pdfme sponsor badge diff --git a/packages/lucide/rollup.config.mjs b/packages/lucide/rollup.config.mjs index 3d64d9d0e59..a4840c024b5 100644 --- a/packages/lucide/rollup.config.mjs +++ b/packages/lucide/rollup.config.mjs @@ -1,7 +1,7 @@ import plugins from '@lucide/rollup-plugins'; import replace from '@rollup/plugin-replace'; import dts from 'rollup-plugin-dts'; -import pkg from './package.json' assert { type: 'json' }; +import pkg from './package.json' with { type: 'json' }; const outputFileName = pkg.name; const outputDir = 'dist'; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 84a29d1c294..935fabbf274 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5072,6 +5072,7 @@ packages: acorn-import-assertions@1.9.0: resolution: {integrity: sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==} + deprecated: package has been renamed to acorn-import-attributes peerDependencies: acorn: ^8 @@ -16793,7 +16794,7 @@ snapshots: '@swc-node/sourcemap-support': 0.5.1 '@swc/core': 1.7.23 colorette: 2.0.20 - debug: 4.3.6 + debug: 4.3.7 oxc-resolver: 1.11.0 pirates: 4.0.6 tslib: 2.6.3 @@ -25367,7 +25368,7 @@ snapshots: '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 '@types/node': 20.4.5 - acorn: 8.14.0 + acorn: 8.12.1 acorn-walk: 8.3.3 arg: 4.1.3 create-require: 1.1.1 diff --git a/tools/build-icons/building/aliases/generateAliasesFiles.mjs b/tools/build-icons/building/aliases/generateAliasesFiles.mjs index 52927e7a089..043613475a6 100644 --- a/tools/build-icons/building/aliases/generateAliasesFiles.mjs +++ b/tools/build-icons/building/aliases/generateAliasesFiles.mjs @@ -14,6 +14,7 @@ export default async function generateAliasesFiles({ aliasImportFileExtension, aliasNamesOnly = false, separateAliasesFile = false, + separateAliasesFileExtension, showLog = true, }) { const iconsDistDirectory = path.join(outputDirectory, `icons`); @@ -96,8 +97,13 @@ export default async function generateAliasesFiles({ : ''; if (separateAliasesFile) { - const output = `export { default } from "./${iconName}"`; - const location = path.join(iconsDistDirectory, `${alias.name}${iconFileExtension}`); + const output = `export { default } from "./${iconName}${ + separateAliasesFileExtension ? iconFileExtension : '' + }";\n`; + const location = path.join( + iconsDistDirectory, + `${alias.name}${separateAliasesFileExtension ?? iconFileExtension}`, + ); await fs.promises.writeFile(location, output, 'utf-8'); } diff --git a/tools/build-icons/building/generateIconFiles.mjs b/tools/build-icons/building/generateIconFiles.mjs index 0a8aadd4dff..691729e5913 100644 --- a/tools/build-icons/building/generateIconFiles.mjs +++ b/tools/build-icons/building/generateIconFiles.mjs @@ -10,6 +10,8 @@ export default ({ template, showLog = true, iconFileExtension = '.js', + separateIconFileExport = false, + separateIconFileExportExtension, pretty = true, iconsDir, iconMetaData, @@ -46,6 +48,7 @@ export default ({ deprecated, deprecationReason, }); + const output = pretty ? prettier.format(elementTemplate, { singleQuote: true, @@ -56,6 +59,16 @@ export default ({ : elementTemplate; await fs.promises.writeFile(location, output, 'utf-8'); + + if (separateIconFileExport) { + const output = `export { default } from "./${iconName}${iconFileExtension}";\n`; + const location = path.join( + iconsDistDirectory, + `${iconName}${separateIconFileExportExtension ?? iconFileExtension}`, + ); + + await fs.promises.writeFile(location, output, 'utf-8'); + } }); Promise.all(writeIconFiles) diff --git a/tools/build-icons/cli.mjs b/tools/build-icons/cli.mjs index 31e4830155f..c710cf70765 100755 --- a/tools/build-icons/cli.mjs +++ b/tools/build-icons/cli.mjs @@ -34,6 +34,9 @@ const { aliasNamesOnly = false, withDynamicImports = false, separateAliasesFile = false, + separateAliasesFileExtension = undefined, + separateIconFileExport = false, + separateIconFileExportExtension = undefined, aliasesFileExtension = '.js', aliasImportFileExtension = '', pretty = true, @@ -59,6 +62,8 @@ async function buildIcons() { template: iconFileTemplate, showLog: !silent, iconFileExtension, + separateIconFileExport, + separateIconFileExportExtension, pretty: JSON.parse(pretty), iconsDir: ICONS_DIR, iconMetaData, @@ -75,6 +80,7 @@ async function buildIcons() { exportModuleNameCasing, aliasImportFileExtension, separateAliasesFile, + separateAliasesFileExtension, showLog: !silent, }); } diff --git a/tools/build-icons/utils/getAliases.mjs b/tools/build-icons/utils/getAliases.mjs index 342741acdd6..1d469fc06b5 100644 --- a/tools/build-icons/utils/getAliases.mjs +++ b/tools/build-icons/utils/getAliases.mjs @@ -5,7 +5,7 @@ async function getAliases(iconDirectory) { const iconJsons = readSvgDirectory(iconDirectory, '.json'); const aliasesEntries = await Promise.all( iconJsons.map(async (jsonFile) => { - const file = await import(path.join(iconDirectory, jsonFile), { assert: { type: 'json' } }); + const file = await import(path.join(iconDirectory, jsonFile), { with: { type: 'json' } }); return [path.basename(jsonFile, '.json'), file.default]; }), ); diff --git a/tools/build-icons/utils/getIconMetaData.mjs b/tools/build-icons/utils/getIconMetaData.mjs index 7c8c149caee..e03bdaa0278 100644 --- a/tools/build-icons/utils/getIconMetaData.mjs +++ b/tools/build-icons/utils/getIconMetaData.mjs @@ -6,7 +6,7 @@ async function getIconMetaData(iconDirectory) { const aliasesEntries = await Promise.all( iconJsons.map(async (jsonFile) => { /** eslint-disable */ - const file = await import(path.join(iconDirectory, jsonFile), { assert: { type: 'json' } }); + const file = await import(path.join(iconDirectory, jsonFile), { with: { type: 'json' } }); return [path.basename(jsonFile, '.json'), file.default]; }), );