@microsnow/iconhub
@microsnow/iconhub
AI 生成的开源 SVG 图标库:线性风格 24×24 · stroke 1.5 · currentColor · 免费商用。与线上站点 IconHub 出自同一构建卡口(规范 / 安全 / 去重 / 元数据校验)。
安装
npm i @microsnow/iconhub
使用
按 id 取图标
import { getIcon, getIconSvg } from '@microsnow/iconhub';
const icon = getIcon('home'); // 含 zh / keywords / category / addedAt / svg
console.log(icon.svg); // 完整 SVG 字符串,可直接 innerHTML / dangerouslySetInnerHTML
const svg = getIconSvg('search', 'linear', 24); // 指定风格与尺寸的 SVG 字符串
// CommonJS 同样可用
const { getIcon } = require('@microsnow/iconhub');
React 中渲染:
function HomeIcon() {
const { svg } = getIcon('home');
return <span style={{ color: 'inherit' }} dangerouslySetInnerHTML={{ __html: svg }} />;
}
搜索
import { searchIcons } from '@microsnow/iconhub';
searchIcons('图表'); // 匹配 id / 中文名 / 关键词,按相关度排序
searchIcons('chart', { limit: 5 });
增量查询(更新提示)
icons 数组按 addedAt 倒序,配合 since 可查询某日期之后新增的图标:
import { listIcons, version } from '@microsnow/iconhub';
const fresh = listIcons({ since: '2026-09-25' }); // addedAt >= 2026-09-25 的图标
if (fresh.length) notify(`图标库有 ${fresh.length} 个新图标`);
遍历与元数据
import { icons, total, styles, categories, version, updatedAt } from '@microsnow/iconhub';
for (const r of icons) console.log(r.id, r.zh, r.addedAt);
直接消费 JSON / SVG 文件
不打包 JS 也可用(CDN 场景):
@microsnow/iconhub/icons.json—— 全量数据(含每图标的inner与styleAttrs)@microsnow/iconhub/svg/linear/home.svg—— 单个 SVG 原文件
CDN 直链(发布后自动可用):
https://cdn.jsdelivr.net/npm/@microsnow/iconhub/dist/icons.json
https://unpkg.com/@microsnow/iconhub/dist/icons.json
图标规格
| 项 | 值 |
|---|---|
| viewBox | 0 0 24 24 |
| 颜色 | currentColor(跟随文字颜色) |
| 线性 | fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" |
许可
MIT。
Related Packages
qingicon-mcp
MCP server for QingIcon — Chinese-aware icon search and ready-to-use React / Vue...
363
4
Version History
| Version | Released | License |
|---|---|---|
| 0.2.0 | MIT |