In 2017, Airbnb supported 27 languages and had developed robust translation tools that made it easy to add more. We launched Croatian in May with little overhead beyond setting up the new domain and translating phrases. However, this was not true for all new languages; our next most requested language, Hebrew, posed a unique challenge. Because it reads right-to-left, the entire Hebrew UI must be flipped. Browsers only handle reversing the DOM structure, but styling and interactions must be coded manually. This talk covers the journey of enabling right-to-left languages on Recently, Airbnb has moved to a React frontend and away from Sass to a CSS-in-JS paradigm. We developed a performant and cross-browser solution for RTL that leveraged a CSS-in-JS abstraction layer to isolate the logic from our codebase. Our efforts led us most of the way to launching in Arabic and Hebrew while requiring little effort from our product engineers and with minimal disruption to their work.


Comments are closed.

Great intro and great return on experience!

A stellar talk, and great answers to questions as well.

Thanks, Maja!

Luigi De Rosa at 08:37 on 11 May 2018

Nice talk! We definitely need to raise more awareness about RTL and i18n in general.
Maybe too much react-specific but definitely interesting.

Great story and nice talk. Thank you for the open source libs as well!

Luca Fabbri at 18:35 on 11 May 2018

Huge talk, full on information. Loved the whole presentation, starting from old school HTML support to issues you can have today with modern layout. Loved the speaker choice to describe a "love story" as excuse to fix the issue.

niccord at 15:31 on 15 May 2018

great talk about real life: how to add an important feature without rewriting everything!