Beautiful & consistent icon toolkit made by the community. Open-source project and a fork of Feather Icons.
ISC License
Bot releases are hidden (Show)
Published by ericfennis about 2 months ago
chart-gantt
(#2392) by @jguddascontact-round
(#2391) by @jguddascontact
(#2391) by @jguddasPublished by ericfennis 6 months ago
Implementation of the <Icon />
component which makes it easier to create (custom) icons from iconNodes.
This will be useful for external packages like @lucide/lab
and more.
lucide-react
import { burger } from '@lucide/lab';
import { Icon } from 'lucide-react';
<Icon iconNode={burger} /> // Renders burger icon
Published by ericfennis 10 months ago
alarm-smoke
(#1392) by @danielbayleybell-electric
(#1392) by @danielbayleycctv
(#1392) by @danielbayleyfire-extinguisher
(#1392) by @danielbayleypointer-off
(#1567) by @jguddasPublished by ericfennis 10 months ago
user-round-search
(#1620) by @jmsvuser-search
(#1620) by @jmsvPublished by ericfennis 12 months ago
power-circle
(#1353) by @danielbayleypower-square
(#1353) by @danielbayleyarmchair
(#1610) by @jguddasfolder-archive
(#1223) by @jguddasfolder-check
(#1223) by @jguddasfolder-clock
(#1223) by @jguddasfolder-closed
(#1223) by @jguddasfolder-cog
(#1223) by @jguddasfolder-down
(#1223) by @jguddasfolder-edit
(#1223) by @jguddasfolder-git
(#1223) by @jguddasfolder-heart
(#1223) by @jguddasfolder-input
(#1223) by @jguddasfolder-key
(#1223) by @jguddasfolder-lock
(#1223) by @jguddasfolder-minus
(#1223) by @jguddasfolder-open
(#1223) by @jguddasfolder-plus
(#1223) by @jguddasfolder-search-2
(#1223) by @jguddasfolder-search
(#1223) by @jguddasfolder-tree
(#1223) by @jguddasfolder-up
(#1223) by @jguddasfolder-x
(#1223) by @jguddasfolder
(#1223) by @jguddasfolders
(#1223) by @jguddaspower
(#1353) by @danielbayleyPublished by ericfennis about 1 year ago
image-down
(#1570) by @jguddasmap-pinned
(#1390) by @danielbayleyroute-off
(#1390) by @danielbayleyroute
(#1390) by @danielbayleysignpost-big
(#1390) by @danielbayleysignpost
(#1390) by @danielbayleywaypoints
(#1390) by @danielbayleyPublished by ericfennis about 1 year ago
blocks
(#1055) by @danielbayleybus-front
(#1412) by @danielbayleycable-car
(#1412) by @danielbayleycar-front
(#1412) by @danielbayleycar-taxi-front
(#1412) by @danielbayleygrid-2x2
(#1055) by @danielbayleygrid-3x3
(#1055) by @danielbayleym-square
(#1412) by @danielbayleyparking-meter
(#1412) by @danielbayleyrail-symbol
(#1412) by @danielbayleyship-wheel
(#1412) by @danielbayleytractor
(#1412) by @danielbayleytraffic-cone
(#1412) by @danielbayleytrain-front-tunnel
(#1412) by @danielbayleytrain-front
(#1412) by @danielbayleytrain-track
(#1412) by @danielbayleybus
(#1412) by @danielbayleycar
(#1412) by @danielbayleytruck
(#1412) by @danielbayleyPublished by ericfennis about 1 year ago
Reverted changes to use .mjs modules, this caused issues in some Nodejs environments.
See: #1446 #1457
fish-symbol
(#1234) by @danielbayleypaw-print
(#1234) by @danielbayleyrabbit
(#1234) by @danielbayleyshell
(#1234) by @danielbayleysnail
(#1234) by @danielbayleyturtle
(#1234) by @danielbayleyPublished by ericfennis about 1 year ago
Published by ericfennis over 1 year ago
dynamicIconImports
)Due to startup problems with build engines like ESBuild (e.g. Remix and Vite). We move to a different way of importing the dynamicIconImports
. It's now in a separate entry module so compilers won't compile all dynamic imports when loading lucide-react. See #1437
Updated example from v0.260.0
import dynamic from 'next/dynamic'
- import { dynamicIconImports, LucideProps } from 'lucide-react';
+ import { LucideProps } from 'lucide-react';
+ import dynamicIconImports from 'lucide-react/dynamicIconImports';
interface IconProps extends LucideProps {
name: keyof typeof dynamicIconImports;
}
const Icon = ({ name, color, size }: IconProps) => {
const LucideIcon = dynamic(dynamicIconImports[name])
return <LucideIcon color={color} size={size} />;
};
export default Icon;
boom-box
(#1249) by @danielbayleybring-to-front
(#1425) by @james-yeomanpencil-line
(#1286) by @danielbayleypencil-ruler
(#1286) by @danielbayleysend-horizonal
(#1411) by @danielbayleysend-to-back
(#1425) by @james-yeomanpencil
(#1286) by @danielbayleysend
(#1411) by @danielbayleyPublished by ericfennis over 1 year ago
Improves Typescript types export by switching to rollup-plugin-dts for types generation.
Closes #1420 and #1373
When hovering (in an IDE that supports it) over a Lucide component you get a JSDoc comment with useful information about the Lucide Icons component. It also shows a small preview of the icons you imported with the link to the lucide website.
Addition to #1373 (closed).
Lucide react now exposes a dynamic import map dynamicIconImports
. Useful for applications that want to show icons dynamically by icon name. For example when using a content management system with where icon names are stored in a database.
More info in docs
Example component with NextJS:
import dynamic from 'next/dynamic'
import { dynamicIconImports, LucideProps } from 'lucide-react';
interface IconProps extends LucideProps {
name: keyof typeof dynamicIconImports;
}
const Icon = ({ name, color, size }: IconProps) => {
const LucideIcon = dynamic(dynamicIconImports[name])
return <LucideIcon color={color} size={size} />;
};
export default Icon;
These features will be added later to other packages.
import Icon from './Icon';
const App = () => {
return <Icon name="home" />;
};
export default App;
gauge-circle
(#1256) by @danielbayleyminus-circle
(#1381) by @danielbayleyminus-square
(#1381) by @danielbayleyminus
(#1381) by @danielbayleyplus-circle
(#1381) by @danielbayleyplus-square
(#1381) by @danielbayleyplus
(#1381) by @danielbayleysquare
(#1381) by @danielbayleyPublished by ericfennis over 1 year ago
chevron-down-circle
(#1355) by @danielbayleychevron-left-circle
(#1355) by @danielbayleychevron-right-circle
(#1355) by @danielbayleychevron-up-circle
(#1355) by @danielbayleychevron-down-square
(#1355) by @danielbayleychevron-down
(#1355) by @danielbayleychevron-first
(#1355) by @danielbayleychevron-last
(#1355) by @danielbayleychevron-left-square
(#1355) by @danielbayleychevron-left
(#1355) by @danielbayleychevron-right-square
(#1355) by @danielbayleychevron-right
(#1355) by @danielbayleychevron-up-square
(#1355) by @danielbayleychevron-up
(#1355) by @danielbayleychevrons-down
(#1355) by @danielbayleychevrons-left
(#1355) by @danielbayleychevrons-right
(#1355) by @danielbayleychevrons-up
(#1355) by @danielbayleyPublished by ericfennis over 1 year ago
@ generate:changelog /home/runner/work/lucide/lucide
node ./scripts/generateChangelog.mjs "--old-tag=v0.256.1"
table-properties
(#1391) by @danielbayleytable
(#1391) by @danielbayleyPublished by ericfennis over 1 year ago
Full Changelog: https://github.com/lucide-icons/lucide/compare/v0.256.0...v0.256.1
Published by ericfennis over 1 year ago
@ generate:changelog /home/runner/work/lucide/lucide
node ./scripts/generateChangelog.mjs "--old-tag=v0.255.0"
tally-1
(#1244) by @danielbayleytally-2
(#1244) by @danielbayleytally-3
(#1244) by @danielbayleytally-4
(#1244) by @danielbayleytally-5
(#1244) by @danielbayleyPublished by ericfennis over 1 year ago
@ generate:changelog /home/runner/work/lucide/lucide
node ./scripts/generateChangelog.mjs "--old-tag=v0.254.0"
arrows-up-from-line
(#1372) by @danielbayleycontainer
(#1372) by @danielbayleyPublished by ericfennis over 1 year ago
@ generate:changelog /home/runner/work/lucide/lucide
node ./scripts/generateChangelog.mjs "--old-tag=v0.253.0"
area-chart
(#1376) by @nstokoePublished by ericfennis over 1 year ago
@ generate:changelog /home/runner/work/lucide/lucide
node ./scripts/generateChangelog.mjs "--old-tag=v0.252.0"
gallery-horizontal-end
(#1389) by @danielbayleygallery-horizontal
(#1389) by @danielbayleygallery-thumbnails
(#1389) by @danielbayleygallery-vertical-end
(#1389) by @danielbayleygallery-vertical
(#1389) by @danielbayleygem
(#1305) by @danielbayleyPublished by ericfennis over 1 year ago
@ generate:changelog /home/runner/work/lucide/lucide
node ./scripts/generateChangelog.mjs "--old-tag=v0.251.0"
wallet-2
(#1332) by @danielbayleywallet-cards
(#1332) by @danielbayleywallet
(#1332) by @danielbayleyPublished by ericfennis over 1 year ago
@ generate:changelog /home/runner/work/lucide/lucide
node ./scripts/generateChangelog.mjs "--old-tag=v0.250.0"
cassette-tape
(#1248) by @danielbayleyvideotape
(#1248) by @danielbayley