All projects

IKCO Global Website

Iran Khodro Industrial Group · Automaker

Iran Khodro’s four-language public site built with Next.js — product pages, catalogue downloads, blog, spare-part requests and a Leaflet-based global dealer locator.

Role
Senior Frontend Engineer
Period
2024
Type
Enterprise

Overview

The international-facing website for Iran Khodro, serving Persian, English, Arabic and Russian audiences. It carries the product catalogue, downloadable brochures, editorial content, a spare-part request flow, and a map of dealers worldwide.

The problem

Four languages across two writing directions is not a translation problem, it is a layout problem. Persian and Arabic run right-to-left; English and Russian run left-to-right; and the same components have to work in both without a forked stylesheet. Beyond direction, the content itself is not symmetric — a product line sold in one market may not exist in another, so "translate the site" was never the right model. Add a dealer map with global coverage and a catalogue of heavy PDF assets, and the performance budget gets tight quickly.

Approach

  • Built the layout with logical CSS properties (inline-start/inline-end rather than left/right) so a single stylesheet serves both writing directions.
  • Modelled content per locale rather than as translations of a canonical locale, so a market can carry a different product set without fighting the CMS.
  • Server-rendered product and editorial pages with Next.js for crawlable, per-locale metadata — the site is a primary SEO surface, not an app behind a login.
  • Loaded the Leaflet dealer map lazily and only on the routes that use it, keeping the map library out of the bundle for the majority of visitors.
  • Kept catalogue PDFs as direct static downloads rather than routing them through the application.

What shipped

  • Four languages — Persian, English, Arabic, Russian — across both RTL and LTR.
  • Leaflet.js dealer locator with global coverage.
  • Product pages with downloadable catalogues and spare-part request flow.
  • Per-locale SEO metadata and server-rendered content.

Outcome

One codebase serves four markets with genuinely different content, and adding a fifth locale is a content exercise rather than an engineering one.

More work