Skip to content

We opened our Constanța studio. See the photos

LABS
Cabinetul de Traduceri2026June 2026

Cabinetul de Traduceri: full-site rebuild, from invisible brochure to multilingual, SEO-ready (June 2026)

Full rebuild for an authorized translation office: from a non-responsive 2010 brochure invisible to Google, to a multilingual, accessible, SEO-ready Next.js site. Every result measured, not estimated.

  • Next.js 16
  • React 19
  • TypeScript
  • Tailwind CSS
  • next-intl
  • Vercel

Challenge

Cabinetul de Traduceri is an authorized translation office operating since 2007, with offices in Constanța and Călărași. It had customers and a reputation. What it did not have was a website that reflected either.

The old site was a brochure built on a 2010-era template: fixed width, a sidebar menu, a stock photo and a paragraph of text. Three problems were quietly costing it customers:

  • It did not work on a phone. The page didn't even have a viewport tag. On mobile, the entire desktop layout was crammed onto the screen in microscopic text. And most people searching for "authorized translations Constanța" search from a phone.
  • It was invisible to Google. No structured data, no canonical URLs, no Open Graph, six H1 tags on one page and zero internal links. Technically, it was exactly what a search engine ignores.
  • It spoke one language. A translation office serves foreign customers by definition. The site existed only in Romanian.
Desktop comparison: on the left the old fixed-width 2010 brochure; on the right the rebuilt, modern, clear site.
Left: the old site. Right: rebuilt from scratch.

Solution

We rebuilt it from scratch rather than patching it. The decisions that mattered:

  • Mobile-first, genuinely responsive. A layout designed for the phone first, with large, clear actions: Call now and WhatsApp one tap away.
  • Multilingual, because that is the product. Six fully translated languages (RO, EN, FR, ES, IT, UK) with per-page hreflang. 467 keys × 6 languages is over 2,800 translated strings, automatically checked to stay at parity. A translation office should speak its customers' languages.
  • Built to be found. Nine schema.org structured-data types, self-referential canonical URLs, Open Graph with build-time generated images, a sitemap, and a localized content library (160+ pages) targeting translation, legalization and apostille queries.
  • Accessible by construction. Skip link, labelled <main>, ARIA attributes, aria-live forms and prefers-reduced-motion support.
  • Conversion, not just presence. WhatsApp and phone contact, a quote-request form protected by Turnstile (fail-closed), a persistent contact bar, and a "no lost leads" guarantee: the request is captured durably, and if email fails there is a WhatsApp fallback.
  • One detail beyond the brief. A server-side power-of-attorney PDF generator with correct diacritics and the legal wording stored as testable data. Not a brochure, a tool.
Phone comparison: on the left the old site cramped and unreadable, on the right the new mobile-first site with large buttons.
On a phone: the old site showed a shrunk desktop layout. The new one is built for the small screen.

Results

Every number below is measured across the two sites, not estimated.

  • Mobile: no viewport, unusable on a phone → fully responsive
  • Accessibility (Lighthouse): 64 → 100
  • Languages (hreflang): 1 → 6 (plus x-default)
  • Structured data: 0 → 9 schema.org types across the site
  • Open Graph / social cards: none → complete, with auto-generated images
  • Canonical URLs: none → on every page
  • H1 tags: 6 (wrong) → 1, with a correct hierarchy
  • Internal links (homepage): 0 → 36
  • Engineering quality: 200+ automated tests (Vitest + Playwright) on every push; CSP plus 6 security headers; strict TypeScript
Animation: the transition from the old site to the new one, on desktop.
Before → after, in a few seconds.

An honest note about speed: the new site does far more than the old one (content, maps, multilingual support, structured data), so it isn't "faster" than a 7 KB brochure. Mobile performance tuning is the next planned step. We would rather say that than inflate a chart.

Stack notes

Next.js 16 (App Router) with React 19, strict TypeScript, Tailwind for styling, next-intl for internationalization, MDX for content, hosted on Vercel. All business content comes from a single typed source, so the interface and the structured data (JSON-LD) cannot drift apart. The code refuses on principle to invent reviews or ratings the business doesn't have. The same discipline we applied to this case study: only numbers we can measure.

Share

Tell us what you're building.

Book a call

Pick which categories of cookies you're OK with. You can change this any time from the footer.