
How to export a Lovable project for a clean WordPress conversion
React + Vite + Tailwind
Lovable projects convert extremely well because the source is a clean React + Vite application with Tailwind classes and predictable routing.
Quick answer
Connect your Lovable project to GitHub and paste the repository URL, or download the repository ZIP from GitHub — both produce a full WordPress theme.
Where do I find the ZIP?
- Open the project in Lovable and use the GitHub button in the top-right corner
- Choose Connect to GitHub and authorise the Lovable GitHub App once
- After the first sync your code lives at github.com/<your-account>/<project-name>
- Either paste that URL into the converter, or use Code → Download ZIP in GitHub
What your upload should contain
package.jsonindex.htmlsrc/vite.config.tspublic/ (if used)
Lovable troubleshooting
The conversion misses recent edits
Lovable syncs to GitHub asynchronously. Wait for the sync indicator to finish, then re-download the ZIP.
Images are missing in the preview
Move images from remote preview URLs into src/assets or public/ and re-export.
Only the homepage appears
Every route needs a link from the header or footer. Add a footer sitemap block so route discovery can find all pages.

Best practices before exporting
- Give every route a real page component and link it from the header or footer navigation
- Keep images inside src/assets or public/ instead of remote preview URLs
- Set a unique title and meta description per page before exporting
- Remove unfinished routes or placeholder pages you do not want in WordPress
How to export
Method 1 — GitHub repository (best result)
- Open your Lovable project and connect it to GitHub from the top-right GitHub menu
- Wait until the first sync completes and the repository appears in your GitHub account
- Copy the repository URL (https://github.com/user/repo)
- Paste the URL into the CONVERT2WP.NET converter — no ZIP handling needed
Method 2 — Download ZIP
- In GitHub, open your synced repository
- Click Code → Download ZIP
- Do not unpack it — upload the ZIP directly
- Confirm the ZIP contains package.json, index.html and src/
Method 3 — Static export
- Run npm install and npm run build locally
- Zip the generated dist/ folder
- Upload the ZIP — the static pipeline converts the rendered HTML one-to-one
- Use this when your project has custom build steps we cannot reproduce
Accepted input
- ZIP archive
- GitHub repository
- Static export
- Source project
- Build output
Not recommended
- Old build folders from a previous version of the project
- Incomplete exports that are missing package.json or index.html
- Screenshots, Figma files, PSD files or design mockups
- node_modules — always exclude it, it makes uploads slow and adds nothing
Supported features
- React Router pages
- Tailwind styling
- Component libraries (shadcn/ui)
- Static images and fonts
- Forms
- SEO meta tags
Unsupported features
- Server-side database queries
- Authenticated dashboards
- Realtime subscriptions
Common mistakes
- Uploading a ZIP that still contains node_modules
- Exporting before the last edits were synced to GitHub
- Leaving images on temporary preview URLs instead of the project folder
Conversion tips
- Ask Lovable to move any hard-coded content into the page components so it ends up in the theme
- Add a footer sitemap link block — it helps route discovery during conversion
Readiness checklist
- Navigation — Use real anchor links with readable labels. Menus built purely from JavaScript state are harder to map to WordPress menu locations.
- Images — Reference images from your project folder (imports or /public). Images loaded from a temporary preview host may not be reachable at conversion time.
- Assets — Fonts, icons and CSS should live inside the project. Locally hosted assets are copied into the theme automatically.
- Forms — Standard form markup is converted to Contact Form 7 or WPForms. Custom JavaScript submit handlers are replaced by the WordPress form handler.
- Routing — Every route you want as a WordPress page must be reachable from the navigation, a sitemap or a route manifest.
- Animations — CSS animations and common libraries survive. Heavy scroll-timeline or canvas effects may render differently in WordPress.
- SEO — Titles, meta descriptions and canonical tags are extracted per page and mapped into the theme and your SEO plugin.
- Responsive — Breakpoints are preserved as-is. Check mobile before exporting — the converter never fixes a layout that was already broken.
Lovable FAQ
How do I export from Lovable?
Connect the project to GitHub and either paste the repository URL or download the ZIP from GitHub. Both work; the repository URL gives the freshest result.
Can I upload GitHub?
Yes. A public GitHub repository URL is the recommended input for Lovable projects.
Can I upload build output?
Yes. Zip the dist/ folder if you prefer converting exactly what your build produced.
Is the GitHub URL better than the ZIP?
Slightly. The repository URL is always the latest commit and avoids ZIP packaging mistakes.
Does Lovable Cloud (Supabase) data convert?
No. Database queries, auth and edge functions are backend features and are not part of a WordPress theme. The frontend converts fully.
Do shadcn/ui components convert?
Yes. They compile to plain HTML and Tailwind classes, which are preserved one-to-one.
Do I need to install anything to convert a Lovable project?
No. Everything runs server-side. You upload a ZIP or paste a repository URL and receive a WordPress theme ZIP plus a live preview in the browser.
Should I remove node_modules before uploading?
Yes, always. node_modules is reinstalled during conversion, so including it only makes the upload slow and can push you over the size limit.
Can I preview the result before paying?
Yes. The WordPress preview is free for every conversion. Payment is only required when you download the theme ZIP.
What happens to my forms?
Standard HTML form markup is mapped to Contact Form 7 or WPForms shortcodes. Custom JavaScript submit handlers are replaced by the WordPress form handler.
Will my SEO titles and meta descriptions survive?
Yes. Titles, meta descriptions and canonical tags are extracted per page and written into the theme templates so your SEO plugin can take over.