Show HN: Extracting React apps from Figma Make's undocumented binary format
19 days ago
- #Reverse Engineering
- #Figma
- #React
- Figma Make files are ZIP archives with a .make extension, containing React applications.
- The canvas.fig file inside the ZIP uses a binary format with two chunks: one deflate-compressed (schema) and one Zstandard-compressed (data).
- Figma's Kiwi binary schema format is used, with the schema in the first chunk and the actual data in the second.
- Extracted source files include React components, TypeScript utilities, CSS files, and design tokens.
- Scripts automate the extraction and setup of a runnable React/Vite project from the Figma Make file.
- Lessons include checking compression types, understanding Figma's internal formats, and handling React StrictMode side effects.