Traduza arquivos Angular $localize, depois verifique cada linha
ng extract-i18n gera XLIFF por padrão, com interpolações como tags <x> e plurais ICU dentro. Remover uma tag faz ng build --localize falhar. KAERIS escreve um <target> para cada unidade e mantém todas as tags e ids.
KAERIS traduziu esta página e verificou cada linha traduzindo-a de volta. Um falante nativo ainda não revisou. Original em inglês
Interpolações permanecem como tags <x>
O equiv-text de cada tag é mantido, para que a build ainda saiba o que foi {{ name }}.
<trans-unit id="welcome" datatype="html">
<source>Welcome back, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</source>
</trans-unit>
<trans-unit id="save" datatype="html">
<source>Save changes</source>
</trans-unit>
<trans-unit id="welcome" datatype="html"> <source>Welcome back, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</source> <target>Willkommen zurück, <x id="INTERPOLATION" equiv-text="{{ name }}"/>!</target> </trans-unit> <trans-unit id="save" datatype="html"> <source>Save changes</source> <target>Änderungen speichern</target> </trans-unit>
O que o KAERIS faz com isso
Seus ids, inalterados
@@idspersonalizados e gerados permanecem como estão, para que as traduções fiquem vinculadas às suas mensagens.Variáveis verificadas sem IA
Após a tradução, uma verificação simples conta cada variável e tag comparando com o original. Uma linha que perdeu alguma é marcada e exibida no topo.
Cada linha traduzida de volta
Um modelo diferente, GPT-4o mini, traduz cada linha de volta para seu idioma, e o DeepSeek V3.2 em hosts dos EUA (DeepInfra, DigitalOcean, Google) avalia se o significado mudou. Você lê o que cada linha diz agora.
Perguntas
Ele também lê --format json?
Sim. O JSON que ng extract-i18n --format json gera é traduzido chave por chave, incluindo blocos ICU.
O XLIFF 2.0 é suportado?
Ainda não. O padrão Angular xlf é XLIFF 1.2, que funciona.
É gratuito?
Sim, sem conta: 10.000 caracteres por arquivo e até 8 idiomas por execução. Uma chave API gratuita eleva o limite para 50.000 caracteres. A licença vitalícia custa $79 uma vez, usando sua própria chave OpenRouter; planos mensais começam em $19. Preços
Posso rodar pelo terminal ou em CI?
Sim. pip install kaeris, depois kaeris translate com seu arquivo e --langs de,ja. Uma GitHub Action abre um pull request quando novas chaves chegam. Documentação