React Figma logo by Lera Lesik
A React renderer for Figma. Use React components as a source for your designs.
- 🍬 Compatible with react-native, react-sketchapp, react-primitives API.
- 🦄 Flexible layouts support with Yoga Layout.
- ♻️ Hydration and HMR support.
- ⚙️ Built on Figma Plugin API.
- 🚫 Is not a code generator.
Example of code:
import * as React from 'react'; import { Page, View, Text } from 'react-figma'; export const App = () => { return ( <Page name="New page" isCurrent> <View> <View style={{ width: 200, height: 100, backgroundColor: '#dd55aa' }} /> <Text style={{ color: '#ffffff' }}>text</Text> </View> </Page> ); };
You can use react-figma-boilerplate for creating own projects.
Install it with yarn:
yarn add react react-figma
Or with npm:
npm i react react-figma --save
import { setupMainThread } from 'react-figma/rpc'; figma.showUI(__html__, { visible: false }); setupMainThread();
import * as React from 'react'; import { App } from './App'; import 'react-figma/rpc'; import { render } from 'react-figma'; render(<App />);
import * as React from 'react'; import { Page, Rectangle, Text } from 'react-figma'; export const App = () => { return ( <Page name="New page"> <Rectangle style={{ width: 200, height: 100, backgroundColor: '#dd55aa' }} /> <Text characters="text" style={{ color: '#ffffff' }} /> </Page> ); };
- Basic
- Design system
- Interactive
- UI - Interact with a Plugin UI
- Data fetching
- 💅 styled-components
- PrimerDemo - Example of multiplatform UI-kit
- Component Variants
- MDX
- Local Styles
Become a backer and get your logo on our Readme on GitHub with a link to your site.
Become a sponsor and get your logo on our README on GitHub with a link to your site.
Everyone is welcome to contribute. Whether you're helping us implement features, fix bugs or improve the docs, we'd love to have you as part of the community!
Check out our Contributing Guide for ideas on contributing and setup steps for getting repository up and running on your local machine.
React Figma team wishes to thank the following invaluable contributions:
- Lera Lesik, for creating project logo.
- Maksim, for TypeScript counseling.
Thanks goes to these wonderful people (emoji key):
Ilya Lesik
💻 Losev Yaroslav
Losev Yaroslav
💻 Vishnu Singh
Vishnu Singh
💻 corrina
corrina
💻 Zachary Witt
Zachary Witt
💻 Abdelrahman Ashraf
Abdelrahman Ashraf
💻 sprashad
sprashad
📖
Vivian Lee
💻 macintoshhelper
macintoshhelper
💻 Pierre Grimaud
Pierre Grimaud
📖 Greg Westneat
Greg Westneat
💻 Marius Reimer
Marius Reimer
💻 szeko
szeko
💻 Jonathan Holmes
Jonathan Holmes
📖
This project follows the all-contributors specification. Contributions of any kind welcome!