awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
G

gregberge/svgr

0
View on GitHub↗
11,043 stars·440 forks·TypeScript·MIT·13 views

Svgr

SVGR is a tool that transforms static SVG files into reusable React components for direct rendering within user interface trees. It functions as an AST-based code transformer and build-time asset pipeline, parsing SVG XML into an abstract syntax tree to modify elements before generating JavaScript source code.

The project integrates an external optimization engine to strip redundant metadata and minify attributes, ensuring vector images are flexible and easy to style. It uses recursive tree traversal to apply these transformations to all nested graphic elements and employs attribute mapping to translate SVG properties into compatible component props.

This transformation layer integrates into frontend asset pipelines to convert vector graphics into programmable code during the project compilation phase.

Features

  • React Component Generators - Provides a CLI and build-tool integration to transform raw vector graphics into optimized React components.
  • AST-Based Source Transformations - Implements AST-based transformations to convert SVG XML nodes into JavaScript source code.
  • Build-Time Asset Processing - Provides a build-time pipeline that processes static vector graphics into programmable UI components.
  • Frontend Asset Pipelines - Integrates scalable vector graphics into the frontend asset pipeline as programmable code instead of static files.
  • Build-Time Transformation Tools - Provides a build-time transformation layer to convert vector graphics into programmable React code during compilation.
  • AST Transformation Pipelines - Implements a transformation pipeline that parses SVG XML into an AST for programmatic modification.
  • Design-to-Code Workflows - Automates the transition of SVG design assets into a manageable library of React components.
  • SVG Component Transformations - Transforms static SVG files into reusable React components for direct rendering within user interfaces.
  • Asset Optimization - Integrates an external minification engine to optimize and strip redundant metadata from SVG assets.
  • SVG Optimization - Optimizes SVG attributes during transformation to ensure vector images remain flexible and styleable.
  • Template-Based Code Generators - Employs customizable string templates to wrap transformed SVG elements into valid React component definitions.
  • SVG Asset Optimizations - Cleans and minifies SVG attributes to ensure images are lightweight and easy to style with CSS.
  • SVG Attribute Optimizations - Adjusts specific SVG property values to ensure visual elements remain flexible and easy to style.
  • Document Tree Traversers - Uses recursive document tree traversal to apply attribute changes and transformations to nested graphic elements.
  • SVG Attribute Mappings - Translates kebab-case SVG attributes into compatible camelCase React props using predefined mapping rules.
  • React Animation Libraries - Tool for transforming SVGs into React components.

Star history

Star history chart for gregberge/svgrStar history chart for gregberge/svgr

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Frequently asked questions

What does gregberge/svgr do?

SVGR is a tool that transforms static SVG files into reusable React components for direct rendering within user interface trees. It functions as an AST-based code transformer and build-time asset pipeline, parsing SVG XML into an abstract syntax tree to modify elements before generating JavaScript source code.

What are the main features of gregberge/svgr?

The main features of gregberge/svgr are: React Component Generators, AST-Based Source Transformations, Build-Time Asset Processing, Frontend Asset Pipelines, Build-Time Transformation Tools, AST Transformation Pipelines, Design-to-Code Workflows, SVG Component Transformations.

Which projects share features with gregberge/svgr?

Projects with overlapping indexed features include: svg/svgo — SVGO is a Node.js vector graphics optimizer and minifier designed to reduce the file size of SVG images. It functions… componentjs/component — Component is a frontend build tool and package manager designed for modular web application development. It functions… supnate/rekit — Rekit is a development toolkit for building scalable web applications, providing a modular framework and automated… react-icons/react-icons — This project is a comprehensive collection of type-safe SVG icon libraries bundled into a single, consistent… openrewrite/rewrite — OpenRewrite is an automated refactoring engine and source-to-source migration framework. It uses a lossless semantic… farm-fe/farm — Farm is a Rust-based web build tool and development server that compiles JavaScript, TypeScript, CSS, HTML, and static…

Projects sharing features with Svgr

These projects share indexed features with Svgr. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • svg/svgosvg avatar

    svg/svgo

    22,535View on GitHub↗

    SVGO is a Node.js vector graphics optimizer and minifier designed to reduce the file size of SVG images. It functions as a pluggable processor that strips redundant XML elements, removes unnecessary metadata, and simplifies paths to create smaller payloads. The tool utilizes a customizable engine where image data is passed through a pipeline of programmable rules and optimization presets. This architecture allows for the integration of custom plugins to apply specialized transformation rules to vector files. The system includes a command-line interface for batch file processing and recursive

    JavaScriptclijavascriptminification
    View on GitHub↗22,535
  • componentjs/componentcomponentjs avatar

    componentjs/component

    4,523View on GitHub↗

    Component is a frontend build tool and package manager designed for modular web application development. It functions as an asset pipeline orchestrator and module dependency resolver, fetching and organizing local or remote code packages according to specific versioning rules. The system provides a development environment that supports local module linking via symlinks for real-time testing without publishing to a registry. It includes a programmable build pipeline to transform scripts and styles into production assets and an event-driven file watching system to trigger automatic recompilatio

    JavaScript
    View on GitHub↗4,523
  • supnate/rekitsupnate avatar

    supnate/rekit

    4,429View on GitHub↗

    Rekit is a development toolkit for building scalable web applications, providing a modular framework and automated project scaffolding. It functions as an extensible environment for managing the architecture of applications built with React, Redux, and React Router, utilizing a feature-sliced design to organize components, state logic, and routing into decoupled, domain-specific modules. The toolkit distinguishes itself through a plugin-based extensibility system that allows for the creation of custom project element types and the modification of default scaffolding behaviors. It features a R

    JavaScriptreactreact-routerredux
    View on GitHub↗4,429
  • react-icons/react-iconsreact-icons avatar

    react-icons/react-icons

    12,596View on GitHub↗

    This project is a comprehensive collection of type-safe SVG icon libraries bundled into a single, consistent component-based delivery system. It functions as a multi-pack aggregator that provides a library of scalable vector graphics as components with a unified API for styling and rendering. The library integrates numerous popular open-source SVG icon sets into a single component interface, allowing users to access and render a wide variety of iconography within one dependency. It includes native type definitions to ensure property validation and enable development autocomplete. The system

    TypeScripticonsreactsvg-icons
    View on GitHub↗12,596
  • Compare all 30 related projects→