Umbrella Apps and Gettext

Yes. We segmented in two modules: One for common translations functions and another for all Texts to translate. All our umbrella apps call this module (and the “backend app” for common functions).

translations module

defmodule MyApp.Common.Translate do
  @moduledoc """
  Translate functions.
  """

  alias MyApp.Gettext, as: AppGettext

  ...

end

all text module

defmodule MyApp.Common.Gettext do
  @moduledoc """
  Gettext functions.
  """

  import MyApp.Gettext

  gettext(": activate to sort column ascending")
  gettext(": activate to sort column descending")
  gettext("(filtered from _MAX_ total entries)")
  ...
end