OneSky is a localization platform that makes websites and apps translation simple.
This gem integrates OneSky and I18n. At its most basic, it allows you to take the phrases defined under I18n's default locale and upload them to OneSky for translation. You can then download translations and save them as Simple backend YAML files.
Added database backend storage support since version 0.0.3
Using inside a Rails project
In your Rails root, edit your Gemfile to include this gem:
# Gemfile gem 'rails', '3.0.3' ... gem 'i18n-one_sky'
Then tell Bundler to install:
If you haven't done so yet, log in to your account at OneSky and create a new project for this Rails app. Also, find the API key and secret which you will supply here:
rails generate one_sky:init my_api_key my_api_secret my_project my_platform_id
This will create the configuration file config/one_sky.yml.
Once your phrases are defined for your default locale and all your views contain the ubiquitous t() methods, you can submit these phrases to OneSky:
Once the translations are ready, you can download them by:
This will save the translations inside config/locales/*_one_sky.yml files. Now it's just a matter of pushing again to production.
Using outside Rails
i18n-one_sky is also designed to be used outside Rails.
Install it like any regular gem:
gem install i18n-one_sky
And see I18n::OneSky::SimpleClient for the methods available in Ruby.
Using Database as translation storage, YAML as fallback (since version 0.0.3, Rails only)
The following command generates rails initializers and run db migration:
rails generate one_sky:init_active_record_backend
use the upload_phrases rake command to upload your default locale to one sky server:
Then, instead of running one_sky:download, run the following command to download and store the translations into translations database table:
Using i18n-one_sky gem in Heroku
Because Heroku is read-only file system, you have to use database storage as storage backend. Either configure the “ONESKY_API_KEY”, “ONESKY_API_SECRET”, “ONESKY_PROJECT”, “ONESKY_PLATFORM_ID” environment variables manually or use the OneSky Heroku addon.
Read “Using Database as translation storage” sections for details to upload and download phrases.
Copyright 2010-2014 OneSky, Inc.
Licensed under the MIT License.