vi

projects

Real estate website design for Indochina Capital

A bilingual brand website for a real estate investment firm: a portfolio-style project catalogue, team profiles, and a news section the communications team runs itself.

WordPress CMSPHP
Indochina Capital website home page
Role
WordPress Developer
URL
indochinacapital.com

Indochina Capital has worked in real estate investment and financial services since 1999. The website serves as a company profile for international partners and investors, and it is not a sales channel. Three constraints follow from that: flawless visuals, English/Vietnamese bilingual content, and fast loading for visitors abroad.

Bilingual: two independent versions, one shared structure

A common mistake on bilingual sites is to treat the English version as a "translation" of the Vietnamese one, forcing the two to match paragraph by paragraph. An investment firm can't work that way: a press release for foreign partners differs from a news post for the domestic market, and some content exists in only one language.

The structure I chose lets the two versions differ in content while staying in sync on structure: the same set of pages, the same data types, different content. When the communications team publishes a Vietnamese post that has no English version yet, navigation keeps working.

Investment projects presented as a portfolio

In high-end real estate, the photos do most of the persuading. So the project catalogue uses a portfolio layout: large images, generous white space, concise information.

Each project is its own data type with fixed fields: location, property type, scale, status. Visitors can filter the list page, and editors don't have to remember a format. Alongside it sit the leadership team profiles and a timeline of company milestones, two sections institutional investors always read.

Speed when the visitor is half a world away from the server

Visitors come from Vietnam, Hong Kong, Singapore and the US. For someone far away, network latency adds up and a heavy page gets much slower, starting with the very first visit.

I handled it with three measures, in decreasing order of impact:

  • Full-page caching on the server, so each view doesn't rebuild the HTML
  • Image sizes matched to each display slot, instead of loading the original image and shrinking it with CSS
  • Cutting third-party scripts as far as possible

The third one often gets skipped. A few tracking snippets and widgets whose numbers nobody reads can weigh more than the rest of the page combined.

More projects

all projects →