One-Shot Production Code. Turn any Figma screen into a clean, feature-sliced React Native component in seconds.
- Zero Manual Setup: Auto-detects your tokens, themes, and folder structure.
- Production Quality: Generates
FlatListfor lists,react-hook-formfor inputs, and proper TypeScript interfaces. - Pixel Perfect: Uses Delta E algorithms to match Figma hex codes to your existing theme variables.
- Asset Handling: Automatically downloads and links icons/images to your
./assetsfolder.
- Node.js (v18+)
- Figma Access Token (Get it here)
Clone and build the server locally:
git clone https://github.com/itsklimov/figma-rn
cd figma-rn
yarn install && yarn buildAdd this to your text editor's MCP config (e.g., claude_desktop_config.json):
{
"mcpServers": {
"figma-rn": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/figma-rn/dist/index.js"],
"env": {
"FIGMA_TOKEN": "figd_YOUR_TOKEN_HERE"
}
}
}
}Note: Replace /ABSOLUTE/PATH/TO/... with the real path to the cloned folder.
Once installed, just ask Claude!
"Generate this screen: [FIGMA_URL]"
Claude will use the get_screen tool to:
- Analyze the Figma node.
- Map colors and spacing to your local theme.
- Generate the component, styles, and assets.
- Save everything to
.figma/screens/YourScreen.
Generate the Login screen from https://www.figma.com/design/ABC...?node-id=1-2
Save it to src/features/auth
A complete feature folder is created automatically:
src/features/auth/
├── index.tsx # ⚛️ The Main Component
├── styles.ts # 🎨 Styles (mapped to your theme)
├── assets/ # 🖼️ Downloaded icons & images
└── meta.json # 📊 Generation metadata
| Feature | Description |
|---|---|
| Smart Lists | Detects repeating patterns and generates optimized FlatList code. |
| Theme Matching | Never hardcodes hex values. Matches #F00 to theme.colors.error. |
| Asset Pipeline | Extracts SVGs and PNGs, saves them locally, and generates require() paths. |
| Hooks Generation | Automatically scaffolds useNavigation and clean props interfaces. |
"Tool not found?"
- Restart Claude Desktop.
- Check that
yarn buildcompleted successfully. - Verify the path in your config JSON is absolute and points to
dist/index.js.
"Images missing?"
- Ensure the Figma node allows export permissions.
- The tool handles standard vector exports automatically.
Built with ❤️ for speed.