svgr README

The project's README from github.com/gregberge/svgr. As one markdown file: README.md.

svgr

Transform SVGs into React components 🦁

License Donate npm package npm downloads CI Code Coverage

Try it out online!

Watch the talk at React Europe

SVGR is an universal tool to transform SVG into React components.

SVGR takes a raw SVG and transforms it into a ready-to-use React component.

Docs

See the documentation at react-svgr.com for more information about using svgr!

Quicklinks to some of the most-visited pages:

Example

Take a SVG:

<?xml version="1.0" encoding="UTF-8"?>
<svg
  width="48px"
  height="1px"
  viewBox="0 0 48 1"
  version="1.1"
  xmlns="http://www.w3.org/2000/svg"
  xmlns:xlink="http://www.w3.org/1999/xlink"
>
  <!-- Generator: Sketch 46.2 (44496) - http://www.bohemiancoding.com/sketch -->
  <title>Rectangle 5</title>
  <desc>Created with Sketch.</desc>
  <defs></defs>
  <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
    <g
      id="19-Separator"
      transform="translate(-129.000000, -156.000000)"
      fill="#063855"
    >
      <g id="Controls/Settings" transform="translate(80.000000, 0.000000)">
        <g id="Content" transform="translate(0.000000, 64.000000)">
          <g id="Group" transform="translate(24.000000, 56.000000)">
            <g id="Group-2">
              <rect id="Rectangle-5" x="25" y="36" width="48" height="1"></rect>
            </g>
          </g>
        </g>
      </g>
    </g>
  </g>
</svg>

Run SVGR

npx @svgr/cli --icon --replace-attr-values "#063855=currentColor" -- icon.svg

Get an optimized React component

import * as React from 'react'

const SvgComponent = (props) => (
  <svg width="1em" height="1em" viewBox="0 0 48 1" {...props}>
    <path d="M0 0h48v1H0z" fill="currentColor" fillRule="evenodd" />
  </svg>
)

export default SvgComponent

Supporting SVGR

SVGR is a MIT-licensed open source project. It's an independent project with ongoing development made possible thanks to the support of these awesome backers. If you'd like to join them, please consider:

Learn more about supporting SVGR.

Contributing

Check out the contributing guidelines

License

Licensed under the MIT License, Copyright © 2017-present Greg Bergé.

See LICENSE for more information.

Acknowledgements

This project has been popularized by Christopher Chedeau and it has been included in create-react-app thanks to Dan Abramov. We would like to thanks Sven Sauleau for his help and its intuition.

svgr (gregberge/svgr)

Searching Database…

11.1K ·GitHub
Что это такое?SVGR — это универсальный инструмент, который превращает SVG-файлы в готовые React-компоненты: скармливаете ему обычный SVG — и получаете компонент, который можно сразу вставить в React-проект.
Это утилита командной строки, loader для Webpack или библиотека?И то, и другое, и третье: в SVGR входит CLI для конвертации файлов, loader для Webpack, чтобы SVG можно было импортировать прямо в сборку, и API для Node.js для автоматизированных преобразований.
С чего начать работу с ним?Вся документация находится на react-svgr.com — начните со страницы Getting started, а там есть отдельные руководства по использованию для любого способа подключения на ваш выбор.
Что нужно на компьютере, чтобы он заработал?Нужна среда Node.js: SVGR работает из командной строки, внутри сборки Webpack или программно через свой API для Node.js.
Он просто оборачивает мой SVG в компонент или ещё и оптимизирует его?Он ещё и оптимизирует: в примере из README на вход подаётся обычный SVG, а на выходе получается оптимизированный React-компонент, и SVGO входит в набор инструментов проекта.
Он генерирует React-компоненты только для веба или ещё и для React Native?React Native тоже поддерживается — react-native указан среди основных тем репозитория, так что проект нацелен и на RN-проекты, и на вебовский React.
Насколько SVGR проверен в бою?Очень: его популяризовал Christopher Chedeau, он входил в create-react-app, у него около 11 тысяч звёзд на GitHub, и он по-прежнему развивается как независимый проект под лицензией MIT при поддержке спонсоров.
Можно попробовать его до установки чего-либо?Да — в README есть ссылка на онлайн-песочницу на react-svgr.com: вставляете SVG и мгновенно получаете код React-компонента.
Creator
gregberge
Size
15.7 MB
Stars
11.1K
Age
9y
Commits · 90 Days