Smithery Logo
MCPsSkillsDocsPricing
Login
Smithery Logo

Accelerating the Agent Economy

Resources

DocumentationPrivacy PolicySystem Status

Company

PricingAboutBlog

Connect

© 2026 Smithery. All rights reserved.

    cedrosdev

    lucide-icons

    cedrosdev/lucide-icons
    Design
    2
    1 installs

    About

    SKILL.md

    Install

    Install via Skills CLI

    or add to your agent
    • Claude Code
      Claude Code
    • Codex
      Codex
    • OpenClaw
      OpenClaw
    • Cursor
      Cursor
    • Amp
      Amp
    • GitHub Copilot
      GitHub Copilot
    • Gemini CLI
      Gemini CLI
    • Kilo Code
      Kilo Code
    • Junie
      Junie
    • Replit
      Replit
    • Windsurf
      Windsurf
    • Cline
      Cline
    • Continue
      Continue
    • OpenCode
      OpenCode
    • OpenHands
      OpenHands
    • Roo Code
      Roo Code
    • Augment
      Augment
    • Goose
      Goose
    • Trae
      Trae
    • Zencoder
      Zencoder
    • Antigravity
      Antigravity
    ├─
    ├─
    └─

    About

    Guide for using Lucide icons in WinnetouJs constructos. Use this skill when you need to add icons to your UI components.

    SKILL.md

    RULES:

    • install: lucide
    • import only needed icons (tree-shake)
    • create icon HTML via createElement(Icon).outerHTML
    • pass icon HTML string to constructo prop
    • use CSS for color (icons inherit text color)
    • for SSR use lucide-static

    BASIC:

    import { createElement, Home } from "lucide";
    
    const homeIcon = createElement(Home, { size: 20 }).outerHTML;
    
    <winnetou>
      <span class="icon">{{icon}}</span>
    </winnetou>
    
    new $navItem({ icon: homeIcon, text: "Home" }).create("#menu");
    

    ICON CUSTOM:

    const alertIcon = createElement(AlertCircle, {
      size: 18,
      strokeWidth: 2,
      color: "#e74c3c",
    }).outerHTML;
    

    CSS COLOR:

    .icon svg {
      width: 1em;
      height: 1em;
    }
    .icon-danger {
      color: #e74c3c;
    }
    

    LIBRARY PATTERN:

    import { createElement, Home, Settings } from "lucide";
    
    export const icons = {
      home: (s = 20) => createElement(Home, { size: s }).outerHTML,
      settings: (s = 20) => createElement(Settings, { size: s }).outerHTML,
    };
    

    SSR:

    // Node
    const { Home } = require("lucide-static");
    const icon = Home; // raw SVG string
    

    BEST PRACTICES:

    • cache icon HTML if reused
    • keep sizes consistent
    • provide labels for icon-only buttons

    TROUBLESHOOT:

    • icon missing: use .outerHTML
    • wrong prop: ensure {{icon}} matches prop name
    • color wrong: set parent color or .icon svg
    Recommended Servers
    Hugeicons MCP Server
    Hugeicons MCP Server
    Astro Docs
    Astro Docs
    Miro
    Miro
    Repository
    cedrosdev/winnetoujs
    Files