Defining Lucide 1.0
Summary
Lucide is almost reaching the 300 in the minor version number and it’s good to start thinking about version 1.0 and start working to this goal.
Looking at some issues we have open on Github we can define 1.0. If combine the relevant issues in one list we can split it up into 3 sections: “icons”, “Community” and “packages”.
Subjects & issues
Icons
Community
Packages
Site
Motivation
Icons
We have added so many new icons in the past year. We now have more than 1300 icons, that’s the crazy number if you compare it with where we started with 287 icons. Thank you to all contributors who contributed all those icons, We should continue with adding more.
But for 1.0 we can’t determine which icons we should have included in our library, it will always be an ongoing process. However, we started issue #119 almost from the beginning. It would be a nice achievement if we could say we have added all requested icons from the feather project. We have still 15 icons to go!
If we look at the whole library, we still have some icons that are not well-named. Some are not generic and some are a bit weirdly named. Also, we want to stop naming icons with a -2 suffix. Brand icons will be removed on v1.0.
We want to make it easier to work with Lucide icons by exploring the idea of flattening SVGs. This will make it easier to use alpha color values with Lucide icons like rgba, hsla etc. Currently, it's making overlapping icons visible. This also can make the library a bit smaller and more performant, since machines only need to draw an SVG path one time.
Community
Some call it our marketing website, our “front of site”. But it’s more of that. It’s a tool to find your icons, a tool to adjust icons, and it’s a book of documentation on how to use our libraries.
The last year we improved it a lot. With the launch of the new website, we have created something we can continue for the next years. And we are happy that we switched to Vitepress which is updated frequently.
But we are not done yet, we still need to improve our documentation. We have already written a “basics” section, which helps to get started. But we also want to write more “in-depth” articles about using Lucide icons. Some topic ideas: “Accessibility”, “Global styling”, “Animations”.
We should highlight the Figma plugin more. The Lucide Figma plugin is a great addition to the Lucide ecosystem. It also meets new designers to contribute to Lucide.
We also have ideas about a second icon library containing icons without known use cases. Before we merge new icons in the library, we require icons to have a valid use case. Otherwise, we will end up with icons people will never use. But unfortunately, we reject icon proposals now and then, some icon designs are beautifully made. So we want to explore the idea of a second library that contains these “rejected” icons. We will research the use of these icons and consider adding them to the main library.
Packages
We want to make all packages as stable as possible, but we still have some issues with certain frameworks. We need to solve these issues before going to v1.
For the React package, we added some experimental features like dynamicImports and JS Docs. These features are well adopted and should be added to all other packages as well.
Packages should be released under the @Lucide organization. This will make it more clear that packages are official Lucide packages, and we don’t have any name conflicts when we want to publish new packages.
But it requires devs to change the package name. Not sure if NPM has something to migrate from lucide-react to @lucide/react for example. But we should make this change on Lucide 1.0
Feedback
We encourage the community to provide feedback on this RFC. Your input is valuable and will help us shape the direction of Lucide 1.0. Please feel free to share your thoughts, suggestions, concerns, or any other feedback you may have.
To provide feedback, you can:
- Leave a comment on this GitHub issue
- Join our community Discord server and participate in the #lucide-v1 channel
- Reach out to the Lucide team directly via email at team@lucide.dev
We appreciate your involvement and look forward to hearing from you!
Participate
We welcome and encourage everyone to participate in the development and improvement of Lucide 1.0. Your contributions, feedback, and ideas are vital to shaping the future of Lucide.
Feel free to help on those open issues we linked in the “Subjects & issues” section. For new features, make sure you post a comment on the issue and share your ideas before you start working on it.
We will label issues with Version 1 to easily filter on these.
Thank you to all the people who already contributed to Lucide. Let's create an amazing icon library for developers worldwide!
Defining Lucide 1.0
Summary
Lucide is almost reaching the 300 in the minor version number and it’s good to start thinking about version 1.0 and start working to this goal.
Looking at some issues we have open on Github we can define 1.0. If combine the relevant issues in one list we can split it up into 3 sections: “icons”, “Community” and “packages”.
Subjects & issues
Icons
Community
Packages
lucide-angularmust be the same as other lucide packages@lucide/{packageName}@lucide/vuefeat(@lucide/vue): Rename Vue package name to@lucide/vue#3337absoluteStrokeWidth⇒vector-effect: non-scaling-strokeSite
Motivation
Icons
We have added so many new icons in the past year. We now have more than 1300 icons, that’s the crazy number if you compare it with where we started with 287 icons. Thank you to all contributors who contributed all those icons, We should continue with adding more.
But for 1.0 we can’t determine which icons we should have included in our library, it will always be an ongoing process. However, we started issue #119 almost from the beginning. It would be a nice achievement if we could say we have added all requested icons from the feather project. We have still 15 icons to go!
If we look at the whole library, we still have some icons that are not well-named. Some are not generic and some are a bit weirdly named. Also, we want to stop naming icons with a
-2suffix. Brand icons will be removed on v1.0.We want to make it easier to work with Lucide icons by exploring the idea of flattening SVGs. This will make it easier to use alpha color values with Lucide icons like
rgba,hslaetc. Currently, it's making overlapping icons visible. This also can make the library a bit smaller and more performant, since machines only need to draw an SVG path one time.Community
Some call it our marketing website, our “front of site”. But it’s more of that. It’s a tool to find your icons, a tool to adjust icons, and it’s a book of documentation on how to use our libraries.
The last year we improved it a lot. With the launch of the new website, we have created something we can continue for the next years. And we are happy that we switched to Vitepress which is updated frequently.
But we are not done yet, we still need to improve our documentation. We have already written a “basics” section, which helps to get started. But we also want to write more “in-depth” articles about using Lucide icons. Some topic ideas: “Accessibility”, “Global styling”, “Animations”.
We should highlight the Figma plugin more. The Lucide Figma plugin is a great addition to the Lucide ecosystem. It also meets new designers to contribute to Lucide.
We also have ideas about a second icon library containing icons without known use cases. Before we merge new icons in the library, we require icons to have a valid use case. Otherwise, we will end up with icons people will never use. But unfortunately, we reject icon proposals now and then, some icon designs are beautifully made. So we want to explore the idea of a second library that contains these “rejected” icons. We will research the use of these icons and consider adding them to the main library.
Packages
We want to make all packages as stable as possible, but we still have some issues with certain frameworks. We need to solve these issues before going to v1.
For the React package, we added some experimental features like dynamicImports and JS Docs. These features are well adopted and should be added to all other packages as well.
Packages should be released under the @Lucide organization. This will make it more clear that packages are official Lucide packages, and we don’t have any name conflicts when we want to publish new packages.
But it requires devs to change the package name. Not sure if NPM has something to migrate from
lucide-reactto@lucide/reactfor example. But we should make this change on Lucide 1.0Feedback
We encourage the community to provide feedback on this RFC. Your input is valuable and will help us shape the direction of Lucide 1.0. Please feel free to share your thoughts, suggestions, concerns, or any other feedback you may have.
To provide feedback, you can:
We appreciate your involvement and look forward to hearing from you!
Participate
We welcome and encourage everyone to participate in the development and improvement of Lucide 1.0. Your contributions, feedback, and ideas are vital to shaping the future of Lucide.
Feel free to help on those open issues we linked in the “Subjects & issues” section. For new features, make sure you post a comment on the issue and share your ideas before you start working on it.
We will label issues with
Version 1to easily filter on these.Thank you to all the people who already contributed to Lucide. Let's create an amazing icon library for developers worldwide!