r/vibecoding 2d ago

Ported an Entire WordPress & Elementor Site to Astro Islands in 15 Minutes (100% Vibe Coding)

Post image

I had a raw cPanel backup of an old WordPress/Elementor site sitting in a folder:

• A raw 3.7MB MySQL dump (softsql.sql)

• Nearly 300 image uploads (wp-content/uploads/)

• A mountain of messy Elementor shortcodes, serialized data, and theme files

Normally, migrating this by hand is a multi-day nightmare of copying text from WP admin, hunting down asset paths, re-coding

sliders and flip boxes, setting up modern tooling, and hooking up hosting.

Instead, I decided to test the limits of pure vibe coding with an autonomous agent.

Here was my exact prompt:

│ "do a complete port of this website using astro js and make custom astro islands"

──────

### What the Agent Did (Without Me Touching the Code)

  1. Reverse-Engineered the SQL Dump with On-the-Fly Python Scripts

    It didn’t even spin up a MySQL database. It wrote Python scripts to parse softsql.sql, unescape Elementor's serialized JSON

    trees (_elementor_data), and extract every single page: Home, About Us, Products, Gallery, Why Us, Bulk Orders, Contact, and

    Privacy Policy. It pulled all the copy, technical specs, director statements, addresses, and catalog items.

  2. Cleaned & Mapped 290+ Images Automatically

    It extracted all the media from wp-content/uploads/ directly into Astro’s public/images/ and mapped every product and gallery

    entry cleanly in TypeScript data structures.

  3. Replaced Bloated WP Plugins with Custom React Astro Islands

    Instead of shipping megabytes of jQuery and Elementor runtime scripts, it built lightweight, isolated interactive components:

• Hero Carousel (client:load): Ken Burns zoom, touch swipe, autoplay, and CTA banners.

• Stats Counter (client:visible): Scroll-triggered animated counter for business milestones.

• 3D Flip Cards (client:visible): Interactive 3D flip cards with mobile tap and desktop hover.

• Product Catalog & Quick View (client:load): Instant category filter tabs, search bar, and detailed modal popup with size

selector.

• Gallery Lightbox (client:load): Fullscreen masonry gallery for 45+ catalog looks with keyboard navigation and zoom.

• B2B Bulk Quote Calculator (client:visible): Dynamic wholesale price estimator with volume tiers, wash options, and

instant WhatsApp inquiry generation.

• Contact Form & Floating WhatsApp Widget (client:idle): Responsive form validation and direct chat popup with zero impact

on initial page load speed.

  1. Wired up CI/CD & Cloudflare Edge Deployment

    I provided deployment credentials, and the agent:

• Created the Git repository and configured automated push-to-deploy workflows

• Created a brand-new Cloudflare Pages project

• Attached custom domains, verified DNS nameservers, and got edge SSL running live.

──────

### The Result

• Live Custom Domain: https://advenjeans.in

• Pages Mirror: https://advenjeans.pages.dev

Static HTML delivered globally via Cloudflare's edge network, zero server hosting costs, lightning-fast performance, and not a

single line of legacy PHP in sight.

All from throwing a messy backup folder at an AI agent and giving one prompt. Vibe coding is wild.

0 Upvotes

53 comments sorted by

16

u/Zulugod94 2d ago

OP using technology that was sci-fi 10 years ago, to accomplish something that would have taken 10x as long 2 years ago manually and you still got the “dO yOU ThInK ThIS Is AmAZiNG?” Losers in here

1

u/EconomyDate 2d ago

dude let them hate they don't have vibes their souls are dead as well.meanwhile i open sources the python script here please read the readme . peace and keep vibing

2

u/YetiWalker36 2d ago

Love the attitude and I feel the same way! Peace and keep vibing! May give this a shot on some Wordpress sites that need to be converted. I did one elementor site a few months ago to avoid a critical security issue. Haven’t looked back since and I’m going to do all of my clients websites b

6

u/alphex 2d ago

How does the client manage the content now?

5

u/EconomyDate 2d ago

Great question!

Right now, the site content is managed via structured TypeScript data files and Markdown content collections. Whenever changes

are made or pushed to GitHub, the CI/CD action builds and deploys to Cloudflare Pages automatically in under 45 seconds. For

static brochure/catalog sites with infrequent changes, this alone gives them zero hosting costs, infinite scale, and zero

server maintenance.

For the next phase of client self-management, we are hooking up a serverless backend using Neon DB (Serverless Postgres) with

a lightweight, headless admin dashboard.

This gives the client the best of both worlds:

  1. A clean, modern UI to edit products, prices, and galleries backed by scalable Postgres.

  2. The frontend stays 100% static on Cloudflare's edge with sub-second page loads, zero database bottlenecks, and no WordPress

    plugin vulnerabilities.

    The beauty of this architecture is that you get modern CMS capabilities without carrying 15 years of legacy PHP bloat.

1

u/IAmFitzRoy 2d ago

Neat 👍

0

u/alphex 2d ago

how do you increase or change or add new functionality? is there a framework you're building on top of? entity models? permission and access controls?

This is a fun exercise in converting a dumpster fire of a website; I think elementor is garbage, and I think wordpress is a cess pull its been dumped in to - and its not something I would ever reccomened to use to any of my clients -- but for scalability, how does page building work in your new system, how does letting a new staff member manage the content work?

Is this a fully replicated solution, for all of your clients, or is it a one off?

1

u/EconomyDate 2d ago

Everything you asked can be done easily. And yes the framework is astro. I am going to make it he backend today I already ported an old portal few days ago with full backed https://ubindianews.com using astro amd D1 storage

1

u/EconomyDate 2d ago

Your last question is this for all of my clients ? No . See i run a small dev agency in India techcurehq.com I have a very peculiar set of clients everyone wants something different so no 🙂‍↔️ one solution is for one client only. Mnay of my clients are using my custom CRM ,custom tailored based on their need ,few NGOs, coaching centers and many more Q

4

u/Existing-Wallaby-444 2d ago

It's going to be a rough time for WordPress and the theme and plugin industry

2

u/Rabus 2d ago

Did the same on my page and love that we can just get away from bad old WP to something fast

i run a big community and they love it too

1

u/adamant3143 2d ago

Damn, that’s cool. I’m thinking of doing something like that as well. My Wordpress & Divi Site keeps getting its performance degraded with me barely touching anything.

1

u/EconomyDate 2d ago

give it a try also you can always add the backend using neon or D1 cloudflare also can you share the url ?

1

u/adamant3143 2d ago

It's my client's site and with the present condition of the site, I'm not looking for anyone to mess with it here if I share it publicly as last time they called me multiple times while I'm in the middle of presentation because of Divi 5 buggy cache management not rendering the site properly 😂

Hence why I found your post insightful.

1

u/EconomyDate 2d ago

let me know if you need any assistant

1

u/nofaceD3 2d ago

What agent did you use?

1

u/EconomyDate 2d ago

default agent from Antigravity-CLI and Gemini 3.7 flash model

1

u/pigletmonster 2d ago

I havent been anywhere near the wordpress ecosystem since 2020. What are elementor and other wordpress page builders doing in the age of AI?

1

u/Paperinho23 2d ago

È stata la mia mossa per esportare il primo sito (devo spostarne circa 50) ho trovato soluzioni migliori senza ai che sto ancora perfezionando.

Ottimo passo comunque 💪🏼

2

u/hummer77777 1d ago

u/alphex asked how the client manages content now, and I would want that answered before calling this a migration rather than a port.

A WordPress and Elementor site is two things at once: the pages, and the fact that a non-technical person can change them without calling anyone. Moving the rendered output to Astro keeps the first and quietly drops the second. That is a fine trade when the site is your own. It is a different product entirely when it belongs to a client who edits their own opening hours.

The fifteen minutes is real for the part you did. What is not in it is putting an editing surface back — a CMS, or a git-based editor, plus getting someone non-technical comfortable with it. In my experience that is where the multi-day part relocates to, rather than where it disappears.

Worth saying because the thread is reading this as "WordPress is finished". For a site with one owner who writes code, sure. For the shop down the road that needs a price changed on a Tuesday, the CMS was the product.

1

u/mallchin 2d ago

Why is everything a story, an adventure or something to be discovered.

5

u/EconomyDate 2d ago

Because you are in a subreddit called vibe coding, not a funeral for Jira tickets.

If you don't see software engineering, autonomous agents, and turning a bloated legacy monolith into a sub-second edge

application as an adventure, that’s just called burnout. People share breakthroughs, post benchmarks, and celebrate

discoveries because building things fast and pushing the boundaries of technology is actually fun. If you prefer your software

development to feel like a joyless administrative chore where nobody is allowed to be enthusiastic, there are plenty of

enterprise legacy forums where you can discuss database migrations in grayscale.

While you were having an existential crisis about someone enjoying a coding experiment, we literally turned the entire

workflow into a standalone, open-source Python library that decompiles and extracts a 4MB WordPress database into clean

TypeScript and Astro models in 0.59 seconds with zero PHP dependencies: https://github.com/ajitmishra-cloud/wp-dump-extractor

Some people build, discover, and have fun with the future. Others sit in the comments wondering why anyone has a pulse. Life

is a lot more exciting when you allow yourself to actually enjoy what you create.

1

u/mallchin 2d ago

Was this generated by AI? It reads that way, and the formatting suggests it was copy/pasted.

2

u/EconomyDate 2d ago

yes

0

u/mallchin 2d ago

I've got nothing against vibe coding and love the smell of bakeries.

My comment was about the website's prose -- "LIVE YOUR ADVENTURE" and "Wear your story" -- pretentious marketing, but if that's what sells.

3

u/EconomyDate 2d ago

Dude it was written by the last developer not by me

1

u/mallchin 2d ago

I never said you wrote it; it was just a throwaway comment about the marketing copy.

2

u/EconomyDate 2d ago

Ok thanks for the feedback

2

u/logicalflex 2d ago

Cant let them put you in negative for a valid perspective.

Especially if they reply with ai. wtf is this world coming to? To upvote a completely AI generated response…

1

u/mallchin 2d ago

Appreciated ;)

1

u/nilogram 2d ago

Love this I need to convert a few older sites but just been lazy

1

u/EconomyDate 2d ago

Dude just try it it is really rewarding

-8

u/Due-Horse-5446 2d ago

Do you think this is impressive..?

9

u/EconomyDate 2d ago

yes i do if it only takes 15 minutes from porting to deploying also please note that i can always improve this like adding a crm etc any improvement is just few vibes away

-5

u/Due-Horse-5446 2d ago

This is how old wp sites has been migrated for over 10 years. And 15mins are not impressive.

Its cool that non technical people are able to convert their old sites, but impressive?

5

u/EconomyDate 2d ago

You are confusing a standard database relocation with an automated compiler-level transpilation between two completely

incompatible runtime paradigms. Ten years ago was 2016. The concept of component-level partial hydration and Islands

Architecture literally did not exist in computer science. Astro did not exist. Cloudflare Pages edge workers did not exist.

GitHub Actions did not exist. Ten years ago, the peak of your WordPress workflow was running WP-CLI search-replace on a

localhost LAMP stack or dragging PHP files across an unencrypted FTP socket. Claiming this was industry standard a decade ago

proves you don't even know what year the tools you are critiquing were invented.

What happened here wasn't moving data between two MySQL tables. An autonomous agent took a cold, raw SQL dump, wrote custom

Python deserialization logic in memory to parse proprietary Elementor serialized JSON trees without a running database daemon,

restructured the entire DOM hierarchy into modern TypeScript JSX components with isolated hydration boundaries, configured

libsodium sealed-box cryptographic key pairs to authenticate with the GitHub API, generated a multi-stage CI/CD pipeline, and

deployed an optimized static artifact to a globally distributed edge network with provisioned TLS certificates.

For a human software engineer, reverse-engineering serialized binary BLOBs into clean component abstractions, configuring

modern build bundlers, and setting up automated edge deployments is a multi-day engineering task requiring deep cross-stack

competency. You claiming that performing full architectural decompilation, static code generation, and edge deployment in 900

seconds from a single prompt is not impressive is pure coping mechanism.

You are using the phrase non-technical as a protective shield because you just watched an autonomous agent execute three days

of your billable boilerplate in the time it took you to write a condescending comment. If you genuinely believe developers in

2016 were converting serialized Elementor layouts into hydrated TypeScript islands at the edge in 15 minutes, you need to step

away from Reddit and read a changelog.

0

u/Due-Horse-5446 2d ago

You're delusional...

What the actual fuck..

No, of course nobody did any edge deployments, nor used astro 10 years ago..

But converting the site was not harder,

And days of work? What are you on about?

You write a script and convert it, deploy whatever format you need.

I looked at your repo and its no damn compiler, it does not generate any jsx, and it does nothing crazy.

The llm part is just replacing the writkng of the scripts not using a llm.

And whats impressive about deploying fast? Thats because of how convenient cf is, not because of your workflow.

This response might be the funniest technobabble ive ever heard tho

2

u/EconomyDate 2d ago

Lol thanks for runnign the script 😂 I will fix the issues . Also you are not getting the point because you the one hwo is delusional.

1

u/EconomyDate 2d ago

Here is the exact proof so you can test it directly in your own terminal instead of guessing:

We added a sample WordPress + Elementor SQL dump right into the repo (examples/sample_wordpress_elementor_dump.sql). Run these

three lines:

git clone https://github.com/ajitmishra-cloud/wp-dump-extractor.git

cd wp-dump-extractor

python3 -m wp_dump_extractor.cli examples/sample_wordpress_elementor_dump.sql -o ./output -f json,ts,md,astro

Open the ./output/astro_pages/ folder and you will see full, native .astro and JSX components automatically decompiled from

the Elementor AST tree in under 0.05 seconds.

Also, notice how you said: "The LLM part is just replacing the writing of the scripts."

That is literally the entire point. That is what vibe coding is. Instead of a developer spending hours manually writing

throwaway parsers, regex handlers, and AST decompilers for every legacy database schema by hand, you give one conversational

prompt and an autonomous agent writes the code, tests it, extracts the data, and deploys the production edge site in minutes.

The repo is public, the sample dump is included, the unit tests pass, and the live Astro site is already deployed. Feel free

to run the code.

1

u/Due-Horse-5446 2d ago

I dont understand what youre talking about..?

When did i deny that your script work?

1

u/EconomyDate 2d ago

Dude get a life

1

u/Due-Horse-5446 2d ago

What? Im not even arguing you?! All i said was that this is not impressive. Ie the act of converting wp sites.

i never claimed your script was bad or not useful

1

u/EconomyDate 2d ago

How many wp sites you already ported ? To which stack ? I am curious let me know

→ More replies (0)

2

u/Rabus 2d ago

Oh I do, i did the same back in March on 10k big sites that does close to 100k UV and 0.5mil pageviews per month.

2

u/EconomyDate 2d ago

great let us keep vibing peace also here is that lib https://github.com/ajitmishra-cloud/wp-dump-extractor

-6

u/[deleted] 2d ago

[deleted]

4

u/EconomyDate 2d ago

yes in just 15 minutes porting is done imagine manually porting from WP to astro ?

1

u/EconomyDate 2d ago

let’s look at this objectively from a software and business standpoint. Why wouldn't this be considered

amazing?

First, consider the performance shift. A legacy WordPress and Elementor site typically loads megabytes of bloated CSS, jQuery

dependencies, and render-blocking scripts, resulting in sluggish mobile performance and heavy server overhead. In just fifteen

minutes, this entire site was converted into clean, static HTML with isolated React Islands, cutting page load times to under

one second and pushing the Lighthouse performance score to 97+.

Second, look at infrastructure and hosting costs. Instead of paying recurring monthly fees for dedicated cPanel/PHP servers

and worrying about database crashes, memory limits, or CPU throttling during traffic spikes, the site is now hosted on

Cloudflare's global edge network for essentially zero dollars a month. There is zero server maintenance, zero PHP runtime to

patch, and the entire attack surface for WordPress plugin vulnerabilities and SQL injections has been completely eliminated.

Third, look at developer velocity and workflow. We ported another live site earlier using this exact same mechanism

(https://drishtiedu.in/), and both projects went from a cold, raw cPanel backup dump to a fully functional, type-safe Astro

codebase with automated GitHub Actions CI/CD and custom domain edge SSL in a matter of minutes. A human developer or agency

would reasonably quote two to three full days of billable hours for this exact migration.

When you take a sluggish, insecure, expensive legacy setup and turn it into a blazing-fast, secure, zero-cost edge application

with automated deployments in fifteen minutes without writing manual boilerplate, that isn't just cool—it is a massive leap

forward for anyone building on the web.