Atenção: Este conteúdo foi traduzido automaticamente. Enviar feedback

Portfólio multilíngue: Alcançando um público global

Criamos um site de portfólio que fala 5 idiomas, combinando tradução automática com localização cuidadosa para criar uma experiência que parece nativa para visitantes de São Paulo a Tóquio.

Role: Desenvolvedor Full-Stackdez. de 2025

Por que a linguagem é importante

Aqui está um número que mudou minha forma de pensar sobre a Web: 75% dos usuários da Internet preferem comprar produtos em seu idioma nativo. Mesmo quando entendem inglês, eles confiam mais no conteúdo em seu próprio idioma. Eles ficam mais tempo. Eles se envolvem mais profundamente.

Para um portfólio, essa percepção tem peso. Um gerente de contratação em São Paulo que esteja examinando meu trabalho não deve ter que traduzir mentalmente ao avaliar minhas habilidades. Um colaborador em potencial em Tóquio deve sentir que o site foi criado pensando nele. O idioma não é apenas uma questão de compreensão. Trata-se de respeito, confiança e a sensação de que você pertence a esse lugar.

Um portfólio somente em inglês envia uma mensagem não intencional: "Isto é para falantes de inglês em primeiro lugar, todos os outros em segundo". Eu queria mudar isso. Queria que os visitantes do Brasil, da Espanha, do Japão e da França chegassem ao meu site e pensassem: "Ah, essa pessoa entende".

Tradução vs. Localização: Uma distinção fundamental

No início desse projeto, aprendi algo que a maioria das pessoas não percebe: tradução e localização não são a mesma coisa.

A tradução converte palavras de um idioma para outro. É algo mecânico. "Entre em contato comigo" se torna "Contáctame" em espanhol. Você está pronto.

A localização adapta toda a experiência a uma cultura específica. Ela considera o contexto, as expectativas e as convenções. Um site localizado não apenas troca palavras. Ele parece nativo.

É aqui que essa distinção é importante na tecnologia: um desenvolvedor brasileiro que lê sobre "pipelines de dados" espera ver "pipelines de dados", não "canalizações de dados". O termo em inglês é padrão no setor. Traduzi-lo pareceria estranho, até mesmo condescendente. Da mesma forma, "dashboard" continua sendo "dashboard" porque é assim que os desenvolvedores de São Paulo, Tóquio e Paris o chamam.

Localização significa saber quando NÃO traduzir. Significa entender que os leitores japoneses esperam "Next.js" e "TypeScript" em inglês, mas rótulos de navegação em japonês. Significa reconhecer que um profissional de marketing francês usa "growth marketing" em uma conversa, e não "marketing de croissance".

Essa percepção moldou todo o sistema. Eu não estava criando uma ferramenta de tradução. Eu estava criando um mecanismo de localização que usa a tradução de forma estratégica.

O desafio

A localização manual não é escalonável. A contratação de tradutores para cada publicação no blog, atualização de projeto e alteração da interface do usuário criaria um gargalo. Pior ainda, isso me atrasaria o suficiente para que eu parasse de publicar em vários idiomas. O ônus da manutenção venceria.

Eu precisava de um sistema com três propriedades:

  1. Velocidade. O novo conteúdo deveria ser localizado em minutos, não em dias.
  2. Inteligência. O sistema deve saber o que traduzir e o que preservar.
  3. Resiliência. Traduções incompletas nunca devem prejudicar o site.

A solução

A arquitetura combina o next-intl para roteamento com reconhecimento de localidade com a API de tradução do DeepL para tradução automática de alta qualidade. Um pipeline de tradução personalizado lida com as nuances.

A experiência do visitante:

Quando alguém chega, o sistema detecta o idioma do navegador. Se estiver definido como português, você verá /pt-BR/blog com conteúdo em português. Os visitantes japoneses veem /ja/projects com texto em japonês. A estrutura do URL é limpa, legível e amigável aos mecanismos de pesquisa.

Se uma página específica ainda não tiver sido traduzida, os visitantes verão a versão em inglês em vez de um erro. Esse fallback ocorre silenciosamente. Não há páginas quebradas, nem mensagens de "tradução em breve". Apenas conteúdo.

O fluxo de trabalho do conteúdo:

Eu escrevo tudo uma vez em inglês. Um script de tradução processa o conteúdo por meio do site DeepL, aplica regras de localização e gera arquivos específicos da localidade. Todo o pipeline é executado em menos de 30 segundos.

Como o script de tradução funciona

O script lida com cadeias de caracteres da interface do usuário (botões, navegação, mensagens de erro) e conteúdo de formato longo (publicações de blog, descrições de projetos, a página sobre). Ele preserva a estrutura do frontmatter, mantém a formatação Markdown e deixa os blocos de código intactos.

O processo:

  1. Ler arquivos de origem em inglês (MDX ou JSON)
  2. Extrair o conteúdo traduzível e preservar a estrutura
  3. Enviar o texto para a API DeepL com o idioma de destino
  4. Aplicar regras de localização (preservar termos técnicos, nomes de produtos)
  5. Escreva arquivos específicos de localidade (por exemplo, post.pt-BR.mdx)

Regras de localização na prática

O sistema segue regras explícitas sobre o que traduzir e o que preservar:

Traduzir sempre:

  • Navegação e rótulos da interface do usuário
  • Conteúdo e descrições de artigos
  • Campos de formulário e mensagens de erro
  • Chamadas para ação

Sempre preservar em inglês:

  • Nomes de produtos: Next.js, TypeScript, DeepL, Cursor
  • Nomes de empresas: Nike, Meta, Rocket Internet
  • Termos técnicos: API, dashboard, data pipeline, template
  • Exemplos de código e caminhos de arquivo

Adaptações específicas de idioma:

  • Português (Brasil): "dashboard" e não "painel", "template" e não "modelo"
  • Espanhol: "marketers" e não "vendedores", "data pipelines" e não "canalizaciones de datos"
  • Japonês: Nomes de produtos em inglês, palavras comuns emprestadas em katakana
  • Francês: "dashboard" e não "tableaux de bord", CTAs naturais como "Contactez-moi"
Como 'Projects' aparece em cada idioma

Projects

ENTradução literal

canalizações de dados

PT-BRLocalizada (preservada)

data pipelines

Essas regras produzem traduções que parecem naturais para leitores experientes em tecnologia em cada localidade. O conteúdo é lido como se tivesse sido escrito para eles, não traduzido para eles.

Resultados

Para os visitantes:

  • Conteúdo disponível em 5 idiomas desde o primeiro dia
  • Detecção automática de idioma com base nas configurações do navegador
  • Experiência consistente em todas as páginas e idiomas
  • Sem becos sem saída, páginas quebradas ou mensagens de "conteúdo não disponível"

Para mecanismos de pesquisa:

  • URLs únicos e indexáveis para cada idioma (/en/blog, /ja/blog, /pt-BR/blog)
  • Tags hreflang adequadas para indexação precisa do idioma
  • Melhor visibilidade nos resultados de pesquisa local em vários países

Para manutenção contínua:

  • Novo conteúdo localizado em menos de 30 segundos
  • Fonte única de verdade em inglês
  • Sem gerenciamento manual de arquivos por idioma
  • É seguro publicar enquanto as traduções estão em andamento

O que eu aprendi

A criação desse sistema me ensinou que a localização é uma decisão de produto, não apenas técnica. Cada escolha sobre o que traduzir (e o que não traduzir) reflete uma compreensão do público.

O maior insight: respeite a experiência dos seus usuários. Um desenvolvedor no Japão não precisa que "TypeScript" seja traduzido para o japonês. Ele precisa que o conteúdo em torno dele pareça natural em seu idioma. Se você conseguir esse equilíbrio, fará a diferença entre um site que parece traduzido e um que parece nativo.

Esse portfólio agora atinge um público global sem a sobrecarga de manter bases de código separadas para cada idioma. Mais importante ainda, ele mostra aos visitantes que o idioma e o contexto deles são importantes para mim. Em um campo em que o portfólio de todos parece igual, isso é importante.

Uma observação sobre traduções

As traduções deste site são geradas usando a API do DeepL e, em seguida, revisadas e refinadas com base nas diretrizes de localização descritas acima. A tradução automatizada é um ponto de partida, não um produto acabado.

Se você perceber que algo está estranho em seu idioma ou tiver sugestões de melhoria, gostaria de receber seu feedback por meio do formulário de contato. A localização é um processo contínuo, e os falantes nativos captam nuances que a automação não percebe.

Outcomes

  • Suporte a 5 idiomas: Inglês, português, espanhol, japonês e francês
  • A tradução automatizada reduz o tempo de localização de dias para menos de 30 segundos
  • URLs otimizados para SEO para cada idioma melhoram a capacidade de descoberta nos resultados de pesquisa local
  • Os fallbacks inteligentes garantem que os visitantes nunca encontrem conteúdo quebrado ou ausente
  • As diretrizes de localização preservam os termos técnicos que o público global de tecnologia espera em inglês