Translating Phoenix Applications With Gettext

Phoenix is a fast and reliable MVC framework written in the language Elixir (which, in turn, relies on Erlang). It has many features that should be familiar to developers who come from the Rails or Django world, but, at the same time, it may seem a bit complex at first due to Elixir’s functional nature.
In this article, you will learn about Phoenix i18n. I’ll walk you through how to add support for i18n in Phoenix applications with the help of Gettext (which is a default dependency). You will learn what Gettext is, what PO and POT files are, how to generate them and easily extract translations from your views. I will also talk about supporting multiple locales, pluralization rules, and domains. If you would like to run the code samples presented in this article locally, you’ll need to install OTP (at least 18), Elixir (at least 1.4) and, of course, the Phoenix framework itself (version 1.3 will be used in this tutorial).