A Lingo.dev mantém as traduções sincronizadas com o seu código. A cada alteração, deteta o que mudou, traduz esse conteúdo com o seu motor de localização ligado — com regras de glossário, voz da marca e configuração do modelo por idioma aplicadas de forma consistente — e faz commit dos resultados ou abre um pull request. As traduções incompletas nunca chegam à produção.
Escolha a sua integração#
Cada integração tem o seu próprio guia. Escolha a que melhor se adapta à sua configuração:
| Integração | Como funciona |
|---|---|
| GitHub App | Instale uma vez. A Lingo.dev executa a localização por si em pushes para o ramo predefinido e, quando ativado, em pull requests — sem runner, sem segredo de chave API, sem lockfile. |
| GitHub Actions | Executa a CLI no seu pipeline de GitHub Actions através da Action oficial. |
| GitLab CI/CD | Executa a CLI nos pipelines do GitLab através da imagem Docker oficial. |
| Bitbucket Pipelines | Executa a CLI nos pipelines do Bitbucket através do Pipe oficial. |
À exceção da GitHub App, todas as integrações executam a CLI da Lingo.dev — por isso, qualquer ambiente de CI/CD com Node.js pode executar a localização diretamente, mesmo sem uma integração nativa.
Como funciona a GitHub App#
Instale a app uma vez e adicione um .lingo/config.json ao repositório. A partir daí, a Lingo.dev executa a localização por si — sem pipeline, sem segredo de chave API, sem lockfile:
- Monitoriza alterações — reage, por predefinição, a pushes no ramo predefinido e, depois de ativar
onPullRequest, também a pull requests, verificando os ficheiros alterados face aos padrões de origem que configurar - Traduz o delta — envia o conteúdo de origem alterado através do motor indicado por
engineId - Escreve os resultados no GitHub — em pushes para o ramo predefinido, abre ou atualiza um pull request de tradução; em pull requests, faz commit dos ficheiros traduzidos no ramo do PR e publica um comentário de estado
- Recupera e agrupa — deteta alterações que tenham escapado a uma execução anterior e divide atualizações muito grandes por vários commits
Pode colocar as execuções atrás de uma etapa de aprovação ou acionar traduções manualmente com comandos /lingo num pull request. Consulte o guia da GitHub App para ver a configuração completa.
Como funcionam as integrações de pipeline#
A GitHub Action, o GitLab CI/CD, o Bitbucket Pipelines e a CLI autónoma executam todos a mesma CLI da Lingo.dev como uma etapa no seu pipeline existente. Precisam de duas coisas: a sua configuração i18n.json e uma chave API.
Em cada execução, a integração:
- Descobre os ficheiros de origem — lê a sua configuração do bucket para encontrar conteúdo traduzível
- Deteta alterações — compara com o ficheiro lock
i18n.lockpara identificar strings novas ou modificadas, para que apenas o delta seja traduzido - Traduz — envia o conteúdo alterado através do seu motor de localização configurado com todas as regras aplicadas — glossário, voz da marca, definições do modelo por idioma
- Escreve os resultados — atualiza os ficheiros do idioma de destino no local
- Faz commit ou abre um PR — consoante o workflow que escolher
Como apenas as strings alteradas são traduzidas, as execuções são rápidas e eficientes em termos de custo — mesmo em dezenas de idiomas.
Opções de workflow#
GitHub App#
O comportamento da App é configurado em .lingo/config.json:
| Opção | O que faz |
|---|---|
Push para o ramo predefinido (onPushToDefaultBranch) | Ativado por predefinição. Abre ou atualiza um PR de tradução quando alterações de origem chegam ao ramo predefinido. |
Tradução de pull request (onPullRequest) | Desativado por predefinição. Faz commit das traduções no ramo do PR à medida que o PR evolui. |
Etapa de aprovação (requireApproval) | Desativada por predefinição. Exige Aprovar/Negar na execução de verificação, ou /lingo approve num PR, antes de as execuções automáticas traduzirem. |
Comandos manuais (/lingo translate) | Repõe traduções em falta ou força traduções para ficheiros específicos a partir de um comentário no PR, em qualquer altura. |
Consulte o guia da GitHub App para ver a configuração completa e a referência de comandos.
GitHub Action, GitLab CI, Bitbucket e CLI#
Quatro padrões de workflow cobrem a maioria das configurações de equipa:
| Workflow | Gatilho | Resultado |
|---|---|---|
| Commit para main | Push para main | Traduções enviadas diretamente por commit para main |
| PR a partir de main | Push para main | Pull request com traduções |
| Commit para ramo de funcionalidade | Push para ramo de funcionalidade | Traduções enviadas por commit para o ramo |
| PR a partir do ramo de funcionalidade | Push para ramo de funcionalidade | Pull request a partir do ramo |
A primeira opção — commit para main — é a mais simples. As traduções aparecem automaticamente, sem qualquer intervenção dos programadores. As opções baseadas em PR acrescentam uma etapa de revisão antes de as traduções serem integradas.
Para saber como escolher entre estas opções, consulte Padrões Avançados.
