Documentação

Magic Translate vs. react-intl

react-intl faz parte do FormatJS. Ele formata mensagens, datas e números com a sintaxe de mensagem ICU e você fornece as traduções para cada idioma. Magic Translate traduz diretamente o texto em seus componentes, para que você não escreva ou mantenha nenhuma tradução.

Em um piscar de olhos

Magic Translatereact-intl
Como você escreve textoSuas próprias palavras, embrulhadas em <T><FormattedMessage> com um id e uma mensagem padrão
TraduçõesTradução automática, criada automaticamenteVocê extrai mensagens e as traduz
Arquivos de mensagensNenhumUm arquivo por idioma
Datas e númerosUse as APIs Intl do navegadorComponentes integrados e sintaxe ICU
Renderização do servidorComponentes do servidor React e Next.jsSim, com configuração extra
PreçoPlano gratuito e, em seguida, planos mensais com base no usoCódigo aberto e gratuito

Como o código difere

Com react-intl, cada mensagem tem um ID e as traduções ficam em arquivos separados:

import { FormattedMessage } from 'react-intl';
const Welcome = () => (
<FormattedMessage id="home.welcome" defaultMessage="Welcome back!" />
);
// Then extract the messages, translate them for every language
// and load the right file when the app starts.

Com Magic Translate, você escreve a mensagem uma vez:

import { T } from '@magic-translate/react';
const Welcome = () => <T>Welcome back!</T>;

Quando escolher Magic Translate

  • Você quer seu aplicativo em vários idiomas sem um fluxo de trabalho de tradução.
  • Seus textos mudam com frequência e você quer que todos os idiomas se mantenham atualizados.
  • Você quer novos idiomas sem pagar ou esperar por tradutores.

Quando escolher react-intl

  • Você precisa da sintaxe da mensagem ICU para plurais e gêneros complexos.
  • Suas traduções devem ser escritas ou revisadas por pessoas.
  • Você quer uma biblioteca gratuita e de código aberto sem serviço externo.

Usando os dois

Os dois funcionam bem juntos. Use as APIs react-intl ou Intl para formatar datas, números e moedas e Magic Translate para traduzir o texto em torno delas.

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