Icon

A platform-aware icon component built on Lucide for consistent iconography.

Installation

npx lovdacn@latest add icon

(You can also use the shortened lvcn alias, e.g., npx lvcn@latest add icon)

This copies the component source into your project (typically components/ui/icon.tsx) and installs any required dependencies.

Registry dependencies: utils

Usage

import { Icon } from "@/components/ui/icon"
import { Home } from "lucide-react-native"

export function Example() {
  return <Icon as={Home} className="size-5 text-foreground" />
}

Styles

lvcn components are available across all style packs:

StyleNotes
defaultClassic rounded system
new-yorkCompact, refined
novaSharp corners (default in many setups)
luma / lyra / maia / miraRadius & font variants
rhea / sera / vegaPill, zero-radius, balanced

Style is set at project init via lvcn.json (style + styleEngine).

Platform

These components target Expo / React Native with NativeWind or Uniwind. They use Platform.select where web and native need different behavior.