GitHub Stars

Icon

Render Fulldev content icons or use Lucide and Simple Icons directly in Astro.

Fulldev supports two icon workflows:

  • Use the Fulldev Icon component when an icon name comes from content, frontmatter, or project configuration.
  • Import @lucide/astro or simple-icons-astro components directly when the icon is code-owned UI.

The Icon component resolves Lucide icons first and falls back to Simple Icons for brand marks. Direct imports remain useful for fixed interface icons in buttons, controls, and examples.

GitHub

Installation

Install the Fulldev icon component when you want content-owned icon names:

npx shadcn@latest add @fulldev/icon

Install direct icon packages only when you need to import icon components in code:

pnpm add @lucide/astro simple-icons-astro

Direct imports

GitHub

Usage

For content-owned icons, pass plain names to Icon:

<Icon name={feature.icon} />

For UI icons that are fixed in code:

import Heart from "@lucide/astro/icons/heart"
<Heart />

For brand icons:

import Github from "simple-icons-astro/Github"
<Github fill="currentColor" />

Example

Inside buttons and similar controls, use data-icon for Lucide icons so the surrounding component can size and align the icon consistently.

Notes

  • Use plain icon names in content, frontmatter, or project configuration.
  • Render content-owned icon names through Icon.
  • Import icon components directly for fixed code-owned UI icons.
  • Prefer @lucide/astro for interface icons and simple-icons-astro for brand marks when importing directly.

API Reference

See the GitHub source code for more information on props.