How One Developer Swapped an 80k-Line jQuery App for Vue3 Without Permission
Many organizations still run critical internal tools on unmodularized jQuery codebases where a single global variable can break production. This strategy shows how to modernize incrementally without a rewrite grant, keeping the backend untouched and the business unaware until the new stack proves itself.
An 80,000-line jQuery 1.12 and Bootstrap 3 admin panel, held together by decade-old comments warning against deletion, was silently migrated to Vue3 over three months. The migration started after a single variable-name collision in an 800-line function took down the entire site's styles, exposing the architecture's fragility. Rather than proposing a full rewrite, the developer embedded a Vite-powered Vue3 app alongside the legacy code, using Vue Router to intercept specific paths while hiding the old DOM container.
Vue components reused the existing jQuery AJAX wrapper through a thin adapter, so backend APIs required zero changes. For pages that needed partial upgrades, Web Components bridged jQuery frames with Vue interactive elements. The first fully converted page, the order list, went live with no incidents, and business users only noticed it felt faster.
Within weeks, four of six team members adopted Vue3 for new pages. The CTO eventually requested the remaining pages be migrated, unaware the groundwork had already been laid. The approach kept risk low by isolating each page, using hash-mode routing for compatibility, and splitting the 400KB+ bundle below 200KB with manual chunks and a CDN.
The hardest part of a legacy rewrite is rarely the code; it's navigating organizational resistance by delivering incremental, provable business value that builds political cover.
Reusing the existing data layer rather than replacing it removes the largest source of risk and approval friction in frontend migrations.
Web Components are an underused migration tool: they let modern frameworks and legacy code coexist in the same DOM without either knowing about the other.
Silent, page-by-page replacement works because users judge software by speed and correctness, not by the framework that renders it.
The core tension is between the perceived technical merit of the secret rewrite and the political and professional risks it carries. Several voices argue that unapproved refactoring is a career-limiting move that shifts all liability onto the developer, disrupts team workload balance, and offers no reward even if successful. A smaller counter-current insists that rewriting with modern tools and AI is genuinely faster than maintaining legacy code and that the time saved benefits the developer directly.
Are you telling a story or is this a real event? No one above you made the call, and you just went ahead and changed things below. If nothing goes wrong, fine, but if something does, the whole blame is yours. No one helps you test it; it's all on you. Also, what about the time? No other work? Just maintaining that one project?
No problem with that. The development pace is fast now, with lots of iteration tasks. I feel if the code runs, try not to touch it. Refactoring takes too much time and easily introduces bugs.
Isn't it possible that rewriting the code in Vue yourself is faster than reading old code and adding features? The time saved is your own slacking-off time. Insisting on hacking away at a mountain of shit—is your skill lacking or do you just want to eat shit?
Still too young, I can only say. Refactoring without getting approval from above is a major taboo. Never do this kind of thankless, unrewarding task... unless the boss or project lead gives the go-ahead.
People like this will get their comeuppance sooner or later. It's not that others can't make changes. It's that the boss pays low wages. You come in and upset the balance, and from now on all the work is yours.