Skip to content

Machine Translator

Actions

About

Automatically create machine-translated PRs of translation files. Supports: .resx, .restext, .ini, .xliff, .po, and .json
v2.2.1
Latest
Star (70)

🌐 Resource Translator

All Contributors

GitHub Marketplace ci CodeQL docs

A GitHub Action that opens machine-translated pull requests for resource files in your repository, powered by Azure AI Translator via Microsoft's official @azure-rest/ai-translation-text SDK — built-in retry/throttling, no hand-rolled HTTP clients.

Supported formats: .resx, .xliff, .po, .json, .ini, .restext.

📚 Documentation

Everything lives on the docs site: ievangelist.github.io/resource-translator

🚀 Quick start

name: translate

on:
  push:
    branches: [main]
    paths:
      - "**/*.en.resx"
      - "**/*.en.json"

permissions:
  contents: write
  pull-requests: write

jobs:
  translate:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v5

      - id: translator
        uses: IEvangelist/resource-translator@v3
        with:
          sourceLocale: en
          subscriptionKey: ${{ secrets.AZURE_TRANSLATOR_SUBSCRIPTION_KEY }}
          endpoint: ${{ secrets.AZURE_TRANSLATOR_ENDPOINT }}
          region: ${{ secrets.AZURE_TRANSLATOR_REGION }}
          toLocales: '["es","fr","de"]'

      - if: steps.translator.outputs.has-new-translations == 'true'
        uses: peter-evans/create-pull-request@v7
        with:
          branch: machine-translation
          title: ${{ steps.translator.outputs.summary-title }}
          body: ${{ steps.translator.outputs.summary-details }}
          labels: localization

For all inputs, repo config, glossary, tone/industry control, and recipes, see the full docs.

🔗 Project links

✨ Contributors

Thanks goes to these wonderful people (emoji key):

vs-savelich
vs-savelich

💻 ⚠️
Yevgen Nykytenko
Yevgen Nykytenko

🐛
Peter Rekdal Khan-Sunde
Peter Rekdal Khan-Sunde

🐛
Tim Heuer
Tim Heuer

🐛 🤔 👀
Tibor Tompa
Tibor Tompa

🤔
Matteo
Matteo

💻 ⚠️
Jeffrey T. Fritz
Jeffrey T. Fritz

📖

This project follows the all-contributors specification. Contributions of any kind welcome!

Machine Translator is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

Automatically create machine-translated PRs of translation files. Supports: .resx, .restext, .ini, .xliff, .po, and .json
v2.2.1
Latest

Machine Translator is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.