svgfusion

Convert SVG files into blazing-fast React and Vue 3 components with automatic color extraction, full TypeScript support, and seamless integration into any modern workflow.
20,640 1
Install
npm install svgfusion
Latest Version:1.40.0
License:MIT
Last Updated:Oct 21, 2026
Links: GitHub  ·  npm
Maintainer: lolvoid

SVGFusion

Convert SVG files into React, Vue 3, and React Native components

npm version TypeScript React Vue.js

Documentation • CLI Reference • Interactive Playground

What's Included

This package includes everything you need for SVG to component conversion:

  • CLI Tool - Convert SVG files from command line
  • Node.js API - Programmatic conversion in Node.js
  • Module API - Browser-compatible module for web apps
  • React, Vue, and React Native Support - Generate components for all three frameworks
  • TypeScript Ready - Full TypeScript support with proper types

Installation

npm install svgfusion

Quick Start

CLI Usage

# Clone the repository
git clone https://github.com/lolvOid/svgfusion
cd svgfusion
pnpm install

# Build first (required)
pnpm build

# Use the CLI
pnpm svgfusion icon.svg --framework react --output ./components
pnpm svgfusion ./icons --framework vue --typescript --output ./components
pnpm svgfusion ./icons --framework react-native --typescript --output ./components

Module Usage (Browser/Web Apps)

import {
  convertToReact,
  convertToVue,
  convertToReactNative,
} from 'svgfusion/browser';

const svgCode = `<svg viewBox="0 0 24 24"><path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/></svg>`;

// React component
const reactResult = await convertToReact(svgCode, {
  componentName: 'StarIcon',
  typescript: true,
  splitColors: true,
});

// Vue component
const vueResult = await convertToVue(svgCode, {
  componentName: 'StarIcon',
  typescript: true,
  splitColors: true,
});

// React Native component (requires react-native-svg in the consuming app)
const rnResult = await convertToReactNative(svgCode, {
  componentName: 'StarIcon',
  typescript: true,
});

Node.js API

import { SVGFusion } from 'svgfusion';

const engine = new SVGFusion();
const result = await engine.convert(svgContent, {
  framework: 'react',
  transformation: { splitColors: true },
  generator: { typescript: true, componentName: 'MyIcon' },
});

Documentation

For complete guides, API reference, and examples visit svgfusion.netlify.app

License

MIT

Related Packages

svgfusion-core

Core engine and utilities for SVGFusion - the foundation library that powers SVG...

27,955
svgfusion-cmd

Command-line interface for converting SVG files into React and Vue 3 components...

22,093
svgfusion-dom

Browser-optimized package for converting SVG files into React and Vue 3 componen...

18,806
denji

A CLI tool to manage your SVG icons

1,815 6
svgpipe

A flexible CLI tool around svgo for further postprocessing.

1,307

Version History

Version Released License
1.40.0 MIT
1.39.0 MIT
1.38.1 MIT
1.38.0 MIT
1.37.2 MIT
Pre-releases (9)
Version Released License
1.25.0-beta.1 MIT
1.24.2-beta.1 MIT
1.0.0-beta.8 MIT
1.0.0-beta.7 MIT
1.0.0-beta.6 MIT