|Labs
Agende uma demoPlataforma
React (Lingo Compiler)
Alpha
React (MCP)React (i18n)
CLI legado (v0)
Descontinuado

Visão geral

  • @lingo.dev/react

Primeiros passos

  • Primeiros passos

Referência

  • LingoProvider
  • useLingo
  • Plurais e select
  • Formatação

Primeiros passos

Este guia mostra, de ponta a ponta, como traduzir um único componente React: instalar o runtime, envolver o app, escrever uma tradução, extraí-la e renderizar o resultado em outro idioma.

1

Instale o runtime

bash
npm install @lingo.dev/react

Se você usa Next.js, instale também @lingo.dev/react-next — ele adiciona helpers integrados ao roteador sobre o mesmo runtime.

2

Envolva o app com LingoProvider

tsx
import { LingoProvider } from "@lingo.dev/react";
import esMessages from "./locales/es.json";

export function App() {
  return (
    <LingoProvider locale="es" messages={esMessages}>
      <Page />
    </LingoProvider>
  );
}

messages é um objeto indexado por hash de conteúdo — exatamente o que o CLI gera em locales/<locale>.json. Na primeira execução, ele vem vazio, e tudo bem: strings ainda não traduzidas usam o texto de origem como fallback.

3

Escreva uma tradução no código-fonte

tsx
import { useLingo } from "@lingo.dev/react";

function Page() {
  const l = useLingo();
  return <h1>{l.text("Hello", { context: "Hero heading" })}</h1>;
}

l.text(source, { context }) é a chamada canônica. context é obrigatório — ele permite que tradutores desambiguem strings que são iguais em inglês, mas mudam entre idiomas ("Save" como verbo vs. "Save" como substantivo).

4

Extraia a string

bash
lingo extract

Isso analisa seu código-fonte, calcula um hash estável para "Hello" + o contexto e o grava no arquivo do idioma de origem (locales/en.jsonc por padrão). Execute novamente após qualquer alteração — a extração é idempotente.

5

Envie para tradução

bash
lingo push --backfill-missing

O CLI faz upload do arquivo de origem, pede ao engine para traduzir para os idiomas de destino configurados e baixa o resultado de volta em locales/<locale>.json. A partir daí, cada envio manda apenas o que mudou.

6

Renderize o texto traduzido

Importe o arquivo JSON do idioma que seu app está renderizando (ou selecione-o dinamicamente com base no usuário) e passe-o para LingoProvider. A chamada do hook da etapa 3 continua igual — l.text("Hello", ...) agora retorna o valor traduzido porque o hash corresponde ao que foi baixado.

Esse é o fluxo completo: escreva o código no idioma de origem, extraia, envie, renderize. Não há um namespace separado de chaves de i18n para manter — a string de origem é a chave (via hash).

Próximos passos#

  • LingoProvider — como messages deve ser, quando aninhar providers, troca de idioma.
  • useLingo — a API completa do hook, incluindo l.rich() para subárvores React dentro das traduções.
  • Plurals and select — como lidar corretamente com "1 item" / "N items".

Esta página foi útil?

Max PrilutskiyMax Prilutskiy·Atualizado há cerca de 1 mês·2 min de leitura