SVG to JSX

Convert SVG markup into clean React JSX or TSX components

Исходный SVG

Перетащите файл .svg сюда

Файлы SVG до 5 МБ.

Также можно вставить из буфера обмена.

Параметры преобразования

PascalCase, например ArrowRightIcon.

Формат вывода
Дополнительные параметры

Удаляет комментарии и текст из одних пробелов между элементами. Это безопасная очистка, а не полноценный оптимизатор SVG.

Отключите для декоративных иконок: title, desc, role и атрибуты ARIA удаляются, добавляется aria-hidden.

Заменяет корневой title и добавляет role="img".

Компонент React
Здесь появится сгенерированный компонент.
Очищенный предпросмотр

Вставьте разметку SVG или загрузите файл, чтобы увидеть предпросмотр.

Что делает SVG to JSX

SVG to JSX превращает разметку SVG в компонент React или обычный элемент JSX. Атрибуты переводятся в имена React (class → className, stroke-width → strokeWidth, fill-rule → fillRule, clip-path → clipPath, xlink:href → xlinkHref), строки встроенных стилей становятся объектами style, а viewBox всегда сохраняется, чтобы иконка правильно масштабировалась.

Как пользоваться
  1. 1.Вставьте разметку SVG, перетащите или выберите файл .svg либо загрузите пример.
  2. 2.Проверьте очищенный предпросмотр и список удалённых небезопасных элементов.
  3. 3.Задайте имя компонента и выберите вывод JSX или TSX.
  4. 4.При необходимости включите обёртку, передачу props, удаление width/height и currentColor.
  5. 5.Скопируйте код или скачайте его как файл .jsx или .tsx.
Описание параметров

Передача props пробрасывает className, размер и обработчики событий из компонента в корневой <svg>; TSX добавляет тип SVGProps<SVGSVGElement>. Удаление width и height позволяет управлять размером через CSS и viewBox. currentColor заменяет сплошные цвета fill и stroke, чтобы иконка наследовала цвет текста; none, transparent, градиенты (url(...)) и переменные CSS не меняются. Очистка пробелов удаляет комментарии и текст из одних пробелов между элементами — это безопасная очистка, а не полноценный оптимизатор SVG. Для декоративных иконок отключите атрибуты доступности: title, desc, role и ARIA удаляются и добавляется aria-hidden. Для значимых иконок введите заголовок — будет добавлен role="img".

Безопасность и ограничения

Любой ввод очищается перед предпросмотром и преобразованием: <script>, <foreignObject>, обработчики событий вроде onclick, URL javascript:, ссылки на внешние изображения и ресурсы, а также неподдерживаемые элементы удаляются и перечисляются. Объявления DOCTYPE и XML-сущности отклоняются. Предпросмотр показывает только очищенную разметку как изображение, поэтому ничего из SVG не выполняется. Размер текста SVG ограничен 5 МБ. Неподдерживаемые элементы отбрасываются, поэтому при конвертации сложных иллюстраций сравните предпросмотр с оригиналом.

CodingTool официально запущен на

Launched on StartupBaseCodingTool.dev - Free, Fast & Easy Developer Tools in One Place | Product HuntCodingTool - Featured on Startup FameFazier badgeListed on Turbo0Featured on Twelve ToolsFeatured on Findly.tools