Documentação

Magic Translate vs. Lingui

Lingui é uma biblioteca i18n de código aberto para JavaScript e React. Como Magic Translate, ele permite que você escreva suas próprias palavras em seus componentes em vez de teclas. A diferença é o que acontece a seguir: com Lingui, você extrai as mensagens, as traduz e as compila para todos os idiomas. Com Magic Translate, as traduções são criadas para você.

Em um piscar de olhos

Magic TranslateLingui
Como você escreve textoSuas próprias palavras, embrulhadas em <T>Suas próprias palavras, embrulhadas em <Trans>
TraduçõesTradução de IA, criada automaticamenteVocê extrai as mensagens e as traduz
Arquivos de mensagensNenhumUm catálogo por idioma, como um arquivo PO
Etapas de construçãoNenhumExtraia e compile os catálogos
Novos idiomasAlterar a configuração languageTraduza todas as mensagens para o novo idioma
Plurais e formataçãoTraduzido como parte da fraseICU mensagens com regras plurais por idioma
PreçoPlano gratuito e, em seguida, planos mensais com base no usoCódigo aberto e gratuito

Como o código difere

Com Lingui, o texto permanece no componente, mas cada mensagem passa por um catálogo:

import { Trans } from '@lingui/react/macro';
const Cart = () => (
<h2>
<Trans>Your shopping cart</Trans>
</h2>
);
// Then run `lingui extract`, translate the catalogs for every language,
// run `lingui compile` and load the right catalog when the app starts.

Com Magic Translate, o componente parece semelhante e as traduções são geradas automaticamente:

import { T } from '@magic-translate/react';
const Cart = () => (
<h2>
<T>Your shopping cart</T>
</h2>
);

Quando escolher Magic Translate

  • Você gosta de escrever suas próprias palavras em seus componentes e não quer manter catálogos.
  • Você não tem tradutores ou deseja lançar atualizações sem esperar pelas traduções.
  • Você quer adicionar idiomas sem gerenciar um projeto de tradução.

Quando escolher Lingui

  • Todo o texto deve ser traduzido ou revisado por uma pessoa.
  • Você precisa de mensagens ICU para plurais e gêneros complexos.
  • Você quer uma biblioteca gratuita e de código aberto sem serviço externo.

Mudando de Lingui para Magic Translate

Como as duas bibliotecas mantêm o texto no componente, a migração é basicamente uma questão de substituir os componentes e funções de tradução: <Trans> se torna <T> e a macro t se torna useT hook. Você pode migrar um componente por vez.

Pronto para experimentar? Siga o guia de introdução para traduzir seu primeiro componente em cinco minutos.