Rebuilt by hand
Someone drags in every section, row and button again and eyeballs the padding against a screenshot.
FrameKitAuto layout becomes the builder's layout: direction, gaps, wrap, padding and alignment.
Paste a Figma frame link. FrameKit reads every layer, works out what it is, and builds the page from your builder's own elements: headings, buttons, menus, accordions, forms. Your client edits it like any other page.
// postmeta _bricks_page_content_2[ { "name": "section", "label": "Hero", "settings": { "_background": { … } } }, { "name": "container", "parent": "fk2a1" }, { "name": "heading", "settings": { "tag": "h1", "text": "Perseverance is still driving." } }, { "name": "text-basic", "settings": { … } }, { "name": "button", "settings": { "text": "Where is Perseverance?", "style": "primary" } }, …]
Most Figma-to-WordPress workflows make you pay for the same page twice, or hand the client something they can't change.
Someone drags in every section, row and button again and eyeballs the padding against a screenshot.
FrameKitAuto layout becomes the builder's layout: direction, gaps, wrap, padding and alignment.
The page arrives as a wall of HTML in a code widget. It looks right until the client needs to change a heading.
FrameKitEvery layer becomes a native element the builder's own panels can edit.
The brand orange is pasted into two hundred settings. A rebrand means finding every one.
FrameKitFigma colour styles link to your site's global colours, by name first, then by value.
The designer changes a headline and swaps a photo. Nobody can say which pages still show the old design.
FrameKitThe Figma diff lists what changed in Figma, what changed on the site, and where they clash.
Your frame doesn't need special layer names. FrameKit guesses each layer's role from how it's drawn, says how sure it is, and lets you correct it before anything is written.
Any frame from any Figma file. Frames beside it named "Home · Tablet" or "Home — Mobile 375" are found and read as its breakpoints.
Every layer gets a role: section, header, heading H1–H6, button, image, card, menu and more. Guesses are marked likely or check this. Change one, and you can apply it to every instance of that component.
The page is written in Bricks's own format with a report of what was set and what wasn't. Saved roles apply to every re-import of that frame.
A layer is also read by what it holds. Nineteen common patterns become the builder's own component, styled the way you drew them.
Layers are matched to the desktop frame by path. What differs (type sizes, padding, gaps, a row stacked, a layer hidden) becomes the builder's own breakpoint setting.
A colour in the frame that matches a site colour is linked, not copied. Add the frame's colour styles to the site in one click and update them by name later.
FrameKit keeps a snapshot of every import. It compares three versions: what Figma holds now, what was imported, and what the page shows now. That way it can tell a change in Figma from an edit made on the site.
Open the page with the diff on and each difference is marked where it sits. You can lay the Figma frame over the page to compare. Only people who can edit the page see it.
If someone edited the page in the builder after the import, a re-import stops and asks before replacing their work. Images are downloaded again only when Figma sends a different one.
The diff reads the rendered page, so it works the same for Bricks as for the other four builders.
The other Figma-to-WordPress tools stop at page content. FrameKit also writes the theme the pages live in, and keeps it in step with your tokens.
Set up for the builder you use, with SCSS you can edit, a layout grid from your Figma grids, and compiled CSS. Logo, menus and Additional CSS carry over from the parent theme. Oxygen loads no theme, so on an Oxygen site your tokens live in Oxygen variables and selectors instead.
figmakit-<builder>/ src/scss/_vars.scss src/scss/_layout.scss src/scss/_variants.scss src/scss/_custom.scss dist/figmakit.css
The top band and the footer you drew become the builder's own header and footer templates, used on every page. Navigation drawn in Figma becomes a WordPress menu.
Buttons come as Primary, Secondary, Outline, Ghost and Text, in three sizes. Cards and sections get their own variants. Edit each one with token pickers and a hover state, and check the text contrast before you save. Variants from your Figma components are added to the list.
Turn this on for Gutenberg imports. Cards, CTAs, FAQs and your own components then become ACF blocks with their fields already filled in. If a block wouldn't look exactly the same, FrameKit keeps core blocks and tells you why.
Enter your colours, type, spacing, grid and corner shape. FrameKit generates the token set every builder uses, then FrameKit Studio composes pages from it and saves them as ordinary Bricks pages.
_custom.scss.FrameKit runs an MCP server. Claude Code, Cursor or any MCP client can read the layer tree, compare it with a screenshot of the frame, fix the unsure roles and import a draft. Nothing is accepted until you accept it.
You
Map Perseverance / Home. The top band is the header. The carousel under the news heading is a slider, and the fact row in the hero is stats.
AI client
→ figmakit_layer_tree frame 2094:82 260 layers · 2 marked "check this" → figmakit_set_roles ✓ header · template-part → header part ✓ div · wp-block-tabs → tabs ✓ div · carousel → slider ✓ dl · facts → stats ✓ figure · gallery → gallery the rest left as guessed (match the screenshot) → import draft ✓ Draft saved · 0 warnings · waiting for your review
Roles, patterns, tokens and the Studio all run on their own. AI is a second pair of eyes on the guesses.
Roles you accept are remembered, so the next frame drawn the same way is guessed right the first time.
Unlimited sites and pages, no credits to run out of. Support and updates included. Pay monthly, or pay yearly and save 20%.
Billed $239.88 yearly
Checkout opens once payments are configured.
The live demo is a WordPress site with FrameKit installed. Import a sample frame into each builder and open the result.
Open the live demo$239.88 a year instead of $299.88 on the monthly plan. Same features, same unlimited sites.
FrameKit runs on your own WordPress site, not on paid AI, so nothing is metered. Use it on every site you build, with as many pages as you like.
Loading questions…
Paste the frame, check the roles, and open it in Bricks.
Get one email when it ships. 0 people are waiting.