Giter VIP home page Giter VIP logo

getatrex's Introduction

Getatrex circleci

Getatrex is a Gettext Automatic Translator written in Elixir, designed to facilitate the translation process of *.po files generated by Gettext in your Elixir/Phoenix project.

Features

  • Automatically translates Gettext *.po files
  • Simple integration with Elixir/Phoenix projects
  • Utilizes Google Cloud Translation API for translations

Demo how it works

Watch a demonstration of Getatrex in action:

IMAGE ALT TEXT HERE

Installation

Add Getatrex as a dependency

To install Getatrex, add it to your list of dependencies in mix.exs:

def deps do
  [{:getatrex, "~> 0.1", only: :dev, runtime: false}]
end

This will also install goth package, which is required for Google automatic translations.

Configure Google Cloud Translation API Key for Goth

To use the Google Cloud Translation API, you'll need an API key. If you don't have one, obtain it from the Google Cloud Console.

Download the JSON file with your credentials and store it somewhere safe (avoid including it in your source control).

Next, open your config/config.exs file and add the following configuration:

# Google credentials
config :goth, json: "path/to/goth_credentials.json" |> File.read!

Replace path/to/goth_credentials.json with the actual path to your credentials file.

Usage

  1. Follow instruction in the Workflow section of the Gettext library
  2. Generate a new locale, e.g., for Spanish, run:
$ mix gettext.merge priv/gettext --locale es
  1. IMPORTANT! Commit your changes to git with a message like "adding new Spanish locale". This ensures you have a previous version to revert to if necessary.
$ git commit -a -m 'adding new Spanish locale'
  1. Use Getatrex to translate the new Spanish locale:
$ mix getatrex es

Getatrex will generate a translated_default.po file with translations. Open this file in your IDE to review and correct any inaccurate translations. Replace the original default.po file with the corrected version when you're done.

Roadmap

  1. Automatically write translations to the original default.po file, eliminating the need for a copy-paste step.
  2. Implement support for plural forms.
  3. Add translation support for errors.po files.

getatrex's People

Contributors

alexfilatov avatar astjohn avatar

Stargazers

Guido Tripaldi avatar  avatar peter madsen-mygdal avatar Joakim Nylén avatar Gavin Walsh avatar Stuart Welham avatar

Watchers

 avatar James Cloos avatar Alexey Pyltsyn avatar Guido Tripaldi avatar

getatrex's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.