mcpField
L
lucide-icons

lucide-icons

github.com/aksuharunデザイン・UI1310 回インストール19 週間前に更新
リポジトリ

lucide-icons について

lucide-iconsは、UIプロジェクトでLucideのフレームワーク別アイコンパッケージを使うためのスキルです。個別のSVGアイコンのインポート、共通プロパティ、アクセシビリティ、各フレームワークの資料を扱います。

主な機能

  1. 01フレームワーク別のアイコンパッケージ
  2. 02個別にインポートできるインラインSVGアイコン
  3. 03共通のサイズ、色、ストローク属性
  4. 04ツリーシェイキングの利用指針
  5. 05アクセシビリティと動的アイコンの指針
  6. 06フレームワーク別の参照ファイル

活用シーン

  1. 01フレームワークのUIにSVGアイコンを追加
  2. 02ビルドに使用するアイコンだけをインポート
  3. 03動的データ由来の名前でアイコンを表示

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aksuharun/skills --skill lucide-icons

インストール後、Claude Code で/lucide-iconsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
lucide-angular.md
lucide-astro.md
lucide-preact.md
lucide-react-native.md
lucide-react.md
lucide-solid.md
lucide-static.md
lucide-svelte.md
lucide-vue-next.md
lucide.md

詳細

Lucide Icons

Lucide はフレームワークごとのパッケージを提供します。各アイコンは個別にインポート可能なコンポーネントまたは要素で、インライン SVG を描画します。すべてのパッケージは完全にツリーシェイク可能です。

アイコンの命名規則

  • パッケージのエクスポート名は PascalCase です:Camera、ArrowRight、CircleAlert
  • CSS/HTML のデータ属性とアイコンフォントのクラス名は kebab-case です:data-lucide="circle-alert"、icon-circle-alert
  • アイコン名は lucide.dev/icons で確認できます

共通プロパティ

すべてのフレームワーク用パッケージで、以下の基本プロパティを共通して使用できます。

proptypedefault
sizenumber24
colorstringcurrentColor
strokeWidthnumber2
absoluteStrokeWidthbooleanfalse

すべてのパッケージは、任意の SVG プレゼンテーション属性もプロパティとして受け付けます(例:fill、stroke-linejoin)。

ベストプラクティス

  • 常にツリーシェイクしてください:使用するアイコンだけをインポートします。本番用バンドルでは * as icons をインポートしないでください。
  • アイコンを直接インポートする(例:from 'lucide-react/icons/camera')と、パッケージのバレルを介さないため、ビルドのパフォーマンスが向上します。
  • 名前で動的に指定する:アイコン名が動的なデータ(CMS など)から取得される場合に限り、DynamicIcon(React)または汎用ラッパーを使用します。
  • アクセシビリティ:アイコンはデフォルトで aria-hidden="true" になります。アイコンが意味を伝える場合は aria-label を追加してください。

フレームワーク別のリファレンスファイル

使用するフレームワークに対応するリファレンスファイルを参照してください。

Framework / EnvironmentPackageReference file
Reactlucide-reactreferences/lucide-react.md
Vue 3lucide-vue-nextreferences/lucide-vue-next.md
Svelte 5 (or 4)@lucide/sveltereferences/lucide-svelte.md
SolidJSlucide-solidreferences/lucide-solid.md
Preactlucide-preactreferences/lucide-preact.md
Angularlucide-angularreferences/lucide-angular.md
Astro@lucide/astroreferences/lucide-astro.md
React Nativelucide-react-nativereferences/lucide-react-native.md
Vanilla JS / HTMLlucidereferences/lucide.md
Static / No-framework / Node.jslucide-staticreferences/lucide-static.md

Lucide Lab(カスタム/非公式アイコン)

Lucide lab は、メインライブラリには含まれていない追加のアイコンを提供します。すべてのパッケージで、Icon コンポーネントを使って Lab のアイコンを利用できます。

// React example — same pattern works across React, Preact, Solid, Astro, Svelte, Vue
import { Icon } from 'lucide-react';
import { coconut } from '@lucide/lab';

<Icon iconNode={coconut} color="red" size={32} />

コメント