# Support I18n translation

**URL:** <https://discourse.hanakai.org/t/support-i18n-translation/18>\
**Category:** proposals\
**Created:** [January 19, 2015, 7:59am UTC](https://discourse.hanakai.org/t/support-i18n-translation/18 "2015-01-19T07:59:53Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![zavan](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/zavan/32/16_2.png) [@zavan](https://discourse.hanakai.org/u/zavan)\
**Post date:** [January 19, 2015, 7:59am UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/1 "2015-01-19T07:59:53Z")

</div>

I’m creating this proposal to start a discussion on i18n support feature.

So, any plans on a internationalization module or integration with a gem?  
[svenfuchs/i18n](https://github.com/svenfuchs/i18n) seems to be the [most popular](https://www.ruby-toolbox.com/categories/i18n).

---

<div class="post-metadata">

**Author:** ![trung\_le](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/trung_le/32/4_2.png) [@trung\_le](https://discourse.hanakai.org/u/trung_le)\
**Post date:** [January 19, 2015, 8:19am UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/2 "2015-01-19T08:19:05Z")

</div>

Thanks for the proposal. Can you please provide further details on how users would use it? Even better if you could provide pros/cons of the way Rails is doing i18n.

---

<div class="post-metadata">

**Author:** ![zavan](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/zavan/32/16_2.png) [@zavan](https://discourse.hanakai.org/u/zavan)\
**Post date:** [January 19, 2015, 9:00am UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/3 "2015-01-19T09:00:58Z")

</div>

I think i18n is an important feature because even when my app is not going to support more than one locale, I use i18n to keep message strings, form labels (simple\_form picks up i18n labels and hints) etc out of the views and controllers, mostly for reusability purposes and all the good things that comes with this (DRY, mainly). Also, you can use i18n keys in controller and integration tests.

I know that Lotus tends to avoid YAML, but that’s the de facto way of doing i18n, since it’s mostly nested key-value pairs.

A lot of people use localeapp (I can’t post more than 2 links, so just google it), so it would be nice if lotus could keep compatibility with it.

All we need to know about it is here: [http://guides.rubyonrails.org/i18n.html](http://guides.rubyonrails.org/i18n.html)

I like the way Rails allows you to couple ActiveRecord model names and attributes to i18n: [https://gist.github.com/zavan/7a9686f8cb9f157dae54](https://gist.github.com/zavan/7a9686f8cb9f157dae54) and how simple\_form use this for input labels.

Rails i18n lacks a way of getting the correct locale for the request (from headers, IP, etc), it would be nice to have some of these strategies built in.

---

<div class="post-metadata">

**Author:** ![huydx](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/huydx/32/14_2.png) [@huydx](https://discourse.hanakai.org/u/huydx)\
**Post date:** [January 20, 2015, 7:16am UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/4 "2015-01-20T07:16:56Z")

</div>

@zavan Can you provide a minimum prototype which show how you will implement i18n in lotus, and how it would be used.

---

<div class="post-metadata">

**Author:** ![trung\_le](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/trung_le/32/4_2.png) [@trung\_le](https://discourse.hanakai.org/u/trung_le)\
**Post date:** [January 28, 2015, 11:45pm UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/5 "2015-01-28T23:45:52Z")

</div>

I like us to avoid YAML as much as possible due to security concern.

I am open for discussion on using ruby file with hash structure tree.

---

<div class="post-metadata">

**Author:** ![darwinrc](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/darwinrc/32/73_2.png) [@darwinrc](https://discourse.hanakai.org/u/darwinrc)\
**Post date:** [April 7, 2015, 4:13pm UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/6 "2015-04-07T16:13:49Z")

</div>

Hello,

Is there any advance in this regard?

I agree with @trung_le in not using yaml and I also don’t like the idea of i18n the Entities directly. Messages must be delivered by the apps and the data should go into DTOs and not Entities. That’s a lot cleaner.

---

<div class="post-metadata">

**Author:** ![pascalbetz](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/pascalbetz/32/97_2.png) [@pascalbetz](https://discourse.hanakai.org/u/pascalbetz)\
**Post date:** [June 24, 2015, 6:26am UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/7 "2015-06-24T06:26:11Z")

</div>

Similar to translations there is also localization (think Dates, Times, Currencies, Separators, …) which is needed to make an App available in multiple countries.

---

<div class="post-metadata">

**Author:** ![trung\_le](https://yyz2.discourse-cdn.com/flex030/user_avatar/discourse.hanakai.org/trung_le/32/4_2.png) [@trung\_le](https://discourse.hanakai.org/u/trung_le)\
**Post date:** [June 28, 2015, 1:11pm UTC](https://discourse.hanakai.org/t/support-i18n-translation/18/8 "2015-06-28T13:11:29Z")

</div>

atm, there is no progress on this front yet, however we are going to discuss this topic again as we get closer to the RailsGirls Summer of Code planning.
