# Ruby on Rails > Ruby on Rails localization file format URL: https://store.crowdin.com/ruby-on-rails Category: File Formats Type: System Author: Crowdin The most commonly used library for internationalizing Ruby on Rails applications is [rails-i18n](https://github.com/svenfuchs/rails-i18n). A comprehensive guide on how to use it in your Rails applications can be found at the [Rails I18n API](http://guides.rubyonrails.org/i18n.html). Ruby on Rails YAML is a natively supported file format in Crowdin, so you don't need to install anything extra to use it. Simply upload your files to your project and start localizing. ## File Format Details | Attribute | Value | | --------- | ----- | | File Extension | .yaml, .yml | | [API Type](https://developer.crowdin.com/api/v2/#operation/api.projects.files.post) | yaml | | Source can be edited in Crowdin | Yes | | Generating translated files via [Bundles](https://support.crowdin.com/bundles/) | [Search Crowdin Store](https://store.crowdin.com/tags/string-exporter) | | Supports pluralization | Yes | | WYSIWYG Preview in the editor | No | | Supported types of contextual information | Text comments, Screenshots, In-Context | | Custom attributes | No | | Existing translations import possibility | Key-value mapping | ## Sample File ```yaml en: welcome: title: "Welcome!" content: "Welcome to the %{app_name}" example_array: ['checking', 'arrays'] long_line: | Long text ``` ## Localizing Ruby on Rails The root node of the YML file should always be a target language code in the ISO 639-1 format. RoR allows multiple locales to be stored in one file, but this is not currently supported by Crowdin. The recommended practice is to have one file per target locale. The syntax for placeholders is as follows: `%{var}`. **Comments** ```yaml en: first_key: "String for translation 1" #Context for string 1 ``` **Plurals** ```yaml en: not_found: "not found" not_saved: one: "one apple" other: "other apples" ```