Set up an environment for translators

Working with PhraseApp In-Context Editor will most likely require a dedicated translation environment. Basically you have two possibilites to achieve that:

A dedicated environment can be a clone of one of your staging environments. In this environment the In-Context Editor is always enabled and translators can always browse the site as needed in order to translate all the new features you are planning to release.

Of course this requires some inital work to set everything up but it leads to a better workflow and a better experience for your translators.

Use an existing environment with a feature switch

Please note: The phraseapp-in-context-editor-ruby gem stores settings on the current thread. This can cause unexpected behaviour when working with multiple users on the staging environment.

If you don’t want to set up a dedicated In-Context Editor environment you can use an existing staging environment and add a possibility to enable/disable the In-Context Editor when needed.

When using the phraseapp-in-context-editor-ruby gem in a Rails application, this could look like this:

around_action :toggle_in_context_editor

def toggle_in_context_editor
  PhraseApp::InContextEditor.with_config(enabled: params[:translate] == "1") do
    yield
  end
end