All articles
·by · Manilla Services·Next.jsMigrareYiiCase studyCore Web Vitals

Yii to Next.js: migrating a premium showroom (Kulttur case study)

How we rebuilt the Kulttur digital showroom from Yii to Next.js: brand-structured catalog, bilingual RO/EN with native hreflang, catalog structured data and green Core Web Vitals (LCP 1.9s, CLS 0) on real users.

Yii to Next.js: migrating a premium showroom (Kulttur case study)

In short: Kulttur, a premium door, window and flooring showroom in Bucharest, ran on Yii — a solid PHP framework, but one that no longer served its performance and AI-search needs. We didn't do a 1:1 migration; we rebuilt the digital showroom from scratch on Next.js. The result: LCP 1.9s and CLS 0 on real users, on par with the brands it sells.

The starting point

Kulttur sells premium products — Wippro, Internorm, niche flooring. The site needed to reflect that level: fast, clean, credible. The old Yii site worked, but it had slow loading, a rigid catalog structure and zero readiness for how people search today (mobile Google, AI Overviews).

The decision wasn't "Yii is bad". It was: for a showroom where speed and premium presentation directly affect sales, a rebuild on a modern stack delivered more than a patch on the old one.

Why a rebuild, not a 1:1 migration

A 1:1 migration would have copied the old structure onto new technology — including its limitations. We chose to rebuild the information from scratch:

A rebuild costs more than a patch, but when the site is the storefront of a premium brand, half-measures show.

The stack we chose

Next.js (App Router) + React + TypeScript. The concrete reasons:

The measured results

On real users (not just Lighthouse lab):

For a site with heavy product images, sub-2s LCP required exactly what I described in the image optimization checklist: responsive WebP, priority on the main image, explicit dimensions.

What mattered most

  1. The images. A showroom lives on visuals. Responsive WebP + lazy loading below the fold made the difference between a site that feels premium and one that loads slowly.
  2. The brand-structured catalog. Aligned with search intent, not with the old DB structure.
  3. Bilingual by construction. Correct hreflang from day one, not bolted onto a monolingual site later.
  4. AI-search readiness. structured data + llms.txt, so the showroom is citable in AI Overviews and ChatGPT, where more and more premium product research is moving.

Conclusion

Migrating off an old stack isn't about "a trendy new framework". It's about: does your site still serve your business, or hold it back? For Kulttur, a Next.js rebuild turned a slow showroom into one that feels on par with the products it sells.

If you have a site on an old stack (Yii, CakePHP, heavy WordPress) that has become a drag, this is the kind of project we do — see custom web apps. And if you first want to know exactly what's holding you back, an SEO/AI audit with code-level fixes shows you the priorities before any rebuild.