一、why?
icons 的需求还是蛮普遍的,每一个组件库基本上都有自己的 icon, 但是也存在一些问题。这些 icons 可能不能完全满足我们的需求,
例如:antd 组件库中的 icons 正对编辑器 toolbar 开发 icons 其实是不完备的,所有我们还是要找其他的 icons 或者自己做。
今天我们就盘点一下社区有哪些 icons 方案,来帮我们解决这个开发时的问题。有了这些解决你对 icons 的需求。
二、icons 方案
市场上实现 icon 的多种方案:
- css 实现 icon
- css + js
- 普通图片(png, jpeg,...)
- svg 图片
- 字体图片
- canvas 绘制
其中 svg 和 字体 icon 是作为常用的,因为他 svg 是矢量的,字体图标可以很好的随着字体的大小变化样式。
三、lucide/feather
1488个高质量图标、轻量级、可伸缩、多框架支持、MIT 协议,社区维护, lucide 基于 father 进行构建。
- lucide 官方地址
- lucide-icons 代码托管
- feathericons官方地址
- feathericons代码托管
- 设计资源 Figma icons
- 安装
pnpm install lucide
pnpm install lucide-react
# ...
四、iconify
数量庞大 200000+
,矢量图标、多框架支持。支持 CSR 和 SSR 多种模式,多协议 MIT、Apache 2.0 and/or GPL 2.0协议。
五、react-icons
流行图标包的 svg 反应图标
- React Icons官方地址
- react-icons代码托管
- 安装
npm install react-icons --save
六、simple-icons
使用 SVG 构建的流行品牌 icons 集合(CC0-1.0 协议)。
- Github 18.7K 🌟
- simple-icons官方地址
- simple-icons代码托管
七、IconPark
🍎将一个SVG图标转为多个主题,并生成React图标,Vue图标,svg图标
八、heroicons
由 Tailwind CSS 的制作者手工制作的精美 SVG 图标。可作为基本 SVG 图标以及通过第一方 React 和 Vue 库使用。
npm install @heroicons/react @heroicons/vue
如果你的项目,使用 tailwindcss, 这是 tailwindcss 官方的 icon 项目,不妨试试。
九、tabler-icons
超过 5300 个免费的 MIT 许可的高质量 SVG 图标,供您在 Web 项目中使用。
- tabler-icons官方地址
- tabler-icons代码托管
十、radix-ui/icons
由 @workos 团队设计的一组清晰的 15×15 图标。
- radix-ui/icons 代码地址
- radix-ui/icons 官方地址
十一、weather-icons
针对天气场景 215 个天气主题图标和 CSS
- weather-icons官方地址
十二、react-kawaii
react-kawaii 主打漫画可爱风格、2.9K star MIT 授权协议。
- https://react-kawaii 官方地址
- react-kawaii 代码托管
十三、小结
这里简单的介绍了 10 中不同的 icon 库,它们是不同的风格。如果你的项目小巧,不需要大型统一的组件库支持,那么这些项目可能是你的好的选择。