Skip to content
Esc
navigateopen⌘Jpreview
On this page

Preact

Use free, open-source Vadivam SVG icon components in Preact with shared defaults, per-icon imports, and dynamic runtime names.

vadivam-preact supports Preact 10.29 and renders native SVG components.

npm install vadivam-preact

Basic usage

import { Activity } from "vadivam-preact";

export function Status() {
  return <Activity size={20} color="navy" strokeWidth={1.5} title="Activity" />;
}

Icons accept Preact SVG attributes plus size, color, strokeWidth, absoluteStrokeWidth, and title.

Shared defaults

import { Activity, Search, VadivamProvider } from "vadivam-preact";

export function Toolbar() {
  return (
    <VadivamProvider size={20} color="navy" strokeWidth={1.5}>
      <Activity />
      <Search color="tomato" />
    </VadivamProvider>
  );
}

The root entry point also exports useVadivamContext, a generic Icon, createVadivamIcon, and icon nodes for advanced use.

Per-icon imports

import Activity from "vadivam-preact/activity";
import Search from "vadivam-preact/icons/search";

Runtime names

import { DynamicIcon } from "vadivam-preact/dynamic";

<DynamicIcon name="activity" size={20} fallback={null} />;

The /dynamic entry point exports DynamicIcon, iconNames, and dynamicIconImports. Dynamic components accept normal icon props, a kebab-case name, and optional Preact children as a fallback.

Use static imports for known names. See Dynamic icons and Usage, styling, and accessibility.

Last updated on July 23, 2026

Was this page helpful?