The React Export Question
Framer is built on React under the hood. So naturally, developers want to extract that React code and drop it into a Next.js project. But Framer doesn't offer a native export button.
There are three distinct paths, each with wildly different tradeoffs in cost, output quality, and effort. Here's how they stack up.
Framer React Export Plugin
$50/mo personal · $250/mo commercial · No one-time option
The React Export Plugin by Tommy D. Rossi (@unframer, 10.4K users) lets you select individual components in Framer and export them as React/TypeScript code via the unframer CLI. It outputs styled-components JSX with .d.ts type definitions.
import React from "react";
import styled from "styled-components";
const HeroSection = () => (
<HeroWrapper>
<Heading>Ship your landing page</Heading>
<Subtext>Design to production React code.</Subtext>
<PrimaryButton>Get Started</PrimaryButton>
</HeroWrapper>
);
const HeroWrapper = styled.div`
display: flex;
flex-direction: column;
align-items: center;
padding: 120px 24px 80px;
`;
export default HeroSection;
Pros
- Native React/JSX output -- import directly
- Component-level granularity
- Styled-components integration
Cons
- $600-3,000/year subscription
- Components only -- no full site export
- Animations often don't translate
FramerExport (HTML/CSS/JS Export)
$10.99 per site (first 25 only) · Full site · All assets included
NoCode to Code exports your entire Framer site as static HTML, CSS, and JavaScript. Every page, every animation, every image -- bundled into a clean ZIP. No build step needed. Open index.html and it works.
<section class="hero">
<div class="hero-content">
<h1 class="hero-heading">
Ship your landing page<br>
in minutes, not weeks
</h1>
<p class="hero-subtext">
Design to production code. No rebuilds.
</p>
<div class="hero-buttons">
<a href="#" class="btn-primary">Get Started</a>
<a href="#" class="btn-secondary">View Demo</a>
</div>
</div>
</section>
Pros
- Full site export with all assets
- No build step -- deploy anywhere instantly
- Animations and interactions preserved
Cons
- Plain HTML, not React components
- JSX conversion needed for React apps
- No built-in state management
/public for an instant deploy. Convert individual pages to JSX over time as you need React features.
Manual Rebuild
$0 tool cost · 20-80+ hours of dev time · $1,500-6,000 at $75/hr
Open your Framer site in DevTools, inspect every element, and recreate the design in React from scratch. You get the cleanest code, but at the highest time cost.
- Best for: Complex apps needing auth, APIs, or dynamic data
- Biggest risk: Most people underestimate the time by 3-5x
- Animations: Must be re-implemented manually with Framer Motion or GSAP
- When it makes sense: The Framer site is a prototype, not the final product
All 3 Methods Compared
| Feature | React Export Plugin | FramerExport (HTML) | Manual Rebuild |
|---|---|---|---|
| Price | $50-250/mo ($600-3K/yr) | $10.99 per site (first 25 only) | $0 (but 20-80 hrs labor) |
| Output format | React/JSX components | HTML/CSS/JS | React/JSX (custom) |
| Full site export | No (components only) | Yes | Yes (if you rebuild all) |
| Build step required | Yes (npm/Node) | No | Yes (npm/Node) |
| Animations preserved | Some | Yes | Manual re-implementation |
| Time to working site | 1-4 hours (assembly needed) | 3 minutes | 20-80+ hours |
| React-native output | Yes | No (plain HTML) | Yes |
| Next.js compatible | Yes (with setup) | Yes (static or convert) | Yes |
| Assets included | Partial | All | Manual download |
| Best for | React devs needing a few components | Full site export, quick Next.js integration | Complex apps needing full custom React |
Which Method Should You Choose?
-
"I need the full site in Next.js ASAP."
-> Method 2 -- Export HTML, drop into
/public, deploy. Export now - "I need specific React components for an existing app." -> Method 1 -- If $50/month fits your budget and you only need a few components.
- "I'm building a complex app with auth and APIs." -> Method 3 -- Use Framer as a visual reference and build from scratch.
- "I want the design as a starting point, then customize." -> Method 2 -- Get HTML, then use Cursor or Claude to modify with AI.
- "I'm a freelancer -- clients want to own their code." -> Method 2 -- $10.99 per site (intro offer, first 25 only). No ongoing subscriptions.
Quick Guide: Exported HTML in Next.js
Option A: Static Files in /public (5 minutes)
The fastest path. Your exported HTML pages are served as-is by Next.js.
-
Create a Next.js project
npx create-next-app@latest my-site -
Copy exported files into /public
Unzip the FramerExport output and move all files (HTML, CSS, JS, images) into
/public. -
Deploy
Run
npm run build && npm startor push to Vercel. Add API routes and middleware alongside the static pages.
Option B: Convert to JSX Components
For deeper React integration, convert the HTML to JSX: rename class to className, self-close tags like <img> and <br>, move CSS to modules or Tailwind, and use the Next.js <Image> component. Takes 1-2 hours per page.
Frequently Asked Questions
Yes, using the React Export Plugin ($50/month). It exports individual components as React/JSX with styled-components. It does not export full sites, and complex animations may not translate.
$50/month personal, $250/month commercial -- no one-time option. An alternative: export as HTML with NoCode to Code for $10.99 per site (first 25 only).
Yes. Quick method: drop HTML files into Next.js /public for static serving (5 minutes). Proper method: convert HTML to JSX components (1-2 hours per page).
Export as HTML via NoCode to Code ($10.99 per site, first 25 only), drop into /public, and convert pages to JSX incrementally as needed.
No. It exports individual components only. You still need to assemble pages, set up routing, and configure a build pipeline yourself.
Ready to export your Framer site?
Paste your URL. Preview the result. Get clean HTML/CSS/JS you can drop straight into Next.js.
Export Your Site Now