About Tom Bakker

Built by someone who did it by hand first.

StaticToWP automates what used to take 8 to 40 hours per project. Tom built it after years of manually converting Webflow exports, AI-generated designs, and static HTML templates into WordPress themes.

400+

themes converted

14

in-depth guides published

8

platforms supported

<60s

average conversion time

Tom Bakker

Tom Bakker

Founder, StaticToWP · Web developer

Tom has spent the last several years doing WordPress theme development for agencies and direct clients. The bulk of that work was converting designs into working WordPress themes — first from Photoshop and Sketch, then Figma, then Webflow, then AI tools like Lovable, v0, and Bolt.

He automated the process because he kept solving the same problems: Tailwind JIT styles missing post-export, Framer Motion keyframes not surviving a static capture, WordPress default styles overriding everything, React remount scripts wiping the WordPress DOM. StaticToWP handles all of these correctly.

Questions about the tool or a specific conversion? hi@statictowp.com

Technical expertise

The knowledge behind StaticToWP comes from years of production WordPress work. Here is what Tom knows in depth.

WordPress theme architecture

Template hierarchy, wp_enqueue_scripts, wp_head/footer hooks, functions.php, theme.json, block editor compatibility.

CSS computed styles

Reading getComputedStyle() output vs source stylesheets. Why JIT-compiled Tailwind, injected Framer Motion keyframes, and Webflow IX2 only exist post-render.

Headless browser rendering

Puppeteer and Playwright for full-page capture. Waiting for fonts, animations, and lazy-loaded assets before snapshot.

Advanced Custom Fields

Programmatic field group generation from DOM content. ACF JSON load paths. Syncing fields across WordPress environments.

AI design tool output

v0 (Next.js + shadcn/ui + Tailwind), Lovable (React + Supabase + Framer Motion), Bolt (Vite + React), Framer (proprietary React + CSS variables). Each has different capture challenges.

Platform migration SEO

Permalink matching, 301 redirect strategy, meta tag transfer, sitemap handoff. Webflow, Squarespace, Wix, and Shopify each have different URL structures.

What breaks in every conversion

These are the six problems that come up in nearly every static-to-WordPress project. StaticToWP handles them all.

Tailwind JIT classes

They don't exist in any CSS file. They're generated at build time and injected into a <style> tag. Source-based tools miss them entirely. Computed capture gets them all.

Framer Motion animations

Framer Motion writes CSS keyframes into <style> tags at runtime. By the time the browser paints, they're in the DOM. A headless renderer captures them as static CSS.

Webflow IX2 interactions

Webflow's interaction engine writes inline styles during execution. The only reliable capture is post-JavaScript-execution — not Webflow's own HTML export.

WordPress default styles

WordPress loads its own block stylesheet that sets typography on naked elements: p, h1, h2, ul. Without theme.json disabling them, they override everything you captured.

React remount scripts

React apps ship an SSR noscript block and a remount script. In WordPress, the remount fires and wipes the PHP-generated header and footer. This needs to be stripped.

External CDN dependencies

Scripts from unpkg, jsDelivr, or a custom CDN create runtime dependencies. Bundle them locally inside assets/js/ or the theme breaks the day that CDN changes its URLs.

How StaticToWP works

1

Paste a URL

Drop in any live URL. Webflow, Lovable, v0, Bolt, Framer, Wix, Squarespace, Shopify, plain HTML. If a browser can load it, it converts.

2

A real browser renders the page

A headless browser loads the URL, executes all JavaScript, waits for fonts and animations, then captures computed styles. Not source CSS. What the browser actually rendered.

3

Download your WordPress theme zip

You get a complete installable theme: front-page.php, functions.php, theme.json, all CSS inlined, scripts bundled locally, ACF field groups, block patterns, and Elementor template. Upload to WordPress and activate.

From the blog

Tom writes in depth about every aspect of static-to-WordPress conversion. These are the core guides.

All 14 guides

Skip the manual work

Paste a URL. Get a WordPress theme.

Any static site, Webflow export, or AI-generated design. Converted to a production-ready WordPress theme in under a minute. Every CSS rule, animation, and font intact.

Try it free

Free to convert · $499 to download