Pular para o conteúdo
Skillpedia
Escrita48 mil · #3303

i18n-localization

Ajuda seu agente a preparar softwares para diferentes idiomas e regiões. Ele encontra textos fixos e gerencia traduções para que o app funcione globalmente.

O que ela faz

Esta ferramenta ajuda a preparar seu aplicativo para ser traduzido para outros idiomas. Ela verifica se há textos fixos que precisam ser traduzidos e organiza os arquivos de tradução.

Quando usar

  • ✓Quando você quer que seu site ou app seja usado em outros países.
  • ✓Ao criar um aplicativo que pode precisar de traduções no futuro.
  • ✓Se você precisa organizar as traduções de um aplicativo já existente.

Exemplo do que pedir para a IA

“Verifique meu código para encontrar textos que não foram traduzidos e me ajude a organizá-los em arquivos de tradução.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/i18n-localization/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/i18n-localization/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta procura por textos escritos diretamente no código que deveriam estar em arquivos separados. Ela sugere como organizar esses textos para facilitar a tradução.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill i18n-localization

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/i18n-localization/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

i18n & Localização

Melhores práticas de Internacionalização (i18n) e Localização (L10n).


1. Conceitos Principais

Termo Significado
i18n Internacionalização - tornar o aplicativo traduzível
L10n Localização - traduções reais
Locale Idioma + Região (pt-BR, en-US)
RTL Idiomas da direita para a esquerda (Árabe, Hebraico)

2. Quando Usar i18n

Tipo de Projeto i18n Necessário?
Aplicativo web público ✅ Sim
Produto SaaS ✅ Sim
Ferramenta interna ⚠️ Talvez
Aplicativo de região única ⚠️ Considerar futuro
Projeto pessoal ❌ Opcional

3. Padrões de Implementação

React (react-i18next)

import { useTranslation } from 'react-i18next';

function Welcome() {
  const { t } = useTranslation();
  return <h1>{t('welcome.title')}</h1>;
}

Next.js (next-intl)

import { useTranslations } from 'next-intl';

export default function Page() {
  const t = useTranslations('Home');
  return <h1>{t('title')}</h1>;
}

Python (gettext)

from gettext import gettext as _

print(_("Welcome to our app"))

4. Estrutura de Arquivos

locales/
├── en/
│   ├── common.json
│   ├── auth.json
│   └── errors.json
├── tr/
│   ├── common.json
│   ├── auth.json
│   └── errors.json
└── ar/          # RTL
    └── ...

5. Melhores Práticas

FAÇA ✅

  • Use chaves de tradução, não texto bruto
  • Agrupe traduções por funcionalidade (namespace)
  • Suporte à pluralização
  • Lide com formatos de data/número por locale
  • Planeje para RTL desde o início
  • Use o formato de mensagem ICU para strings complexas

NÃO FAÇA ❌

  • Codifique strings diretamente nos componentes
  • Concatene strings traduzidas
  • Assuma o comprimento do texto (Alemão é 30% mais longo)
  • Esqueça o layout RTL
  • Misture idiomas no mesmo arquivo

6. Problemas Comuns

Problema Solução
Tradução ausente Fallback para o idioma padrão
Strings codificadas Use script de linter/verificador
Formato de data Use Intl.DateTimeFormat
Formato de número Use Intl.NumberFormat
Pluralização Use o formato de mensagem ICU

7. Suporte a RTL

/* CSS Logical Properties */
.container {
  margin-inline-start: 1rem;  /* Not margin-left */
  padding-inline-end: 1rem;   /* Not padding-right */
}

[dir="rtl"] .icon {
  transform: scaleX(-1);
}

8. Checklist

Antes de publicar:

  • Todas as strings voltadas para o usuário usam chaves de tradução
  • Arquivos de locale existem para todos os idiomas suportados
  • Formatação de data/número usa a API Intl
  • Layout RTL testado (se aplicável)
  • Idioma de fallback configurado
  • Nenhuma string codificada em componentes

Script

Script Propósito Comando
scripts/i18n_checker.py Detectar strings codificadas e traduções ausentes python scripts/i18n_checker.py <project_path>

Quando Usar

Esta habilidade é aplicável para executar o fluxo de trabalho ou as ações descritas na visão geral.

Limitações

  • Use esta habilidade apenas quando a tarefa corresponder claramente ao escopo descrito acima.
  • Não trate a saída como substituta para validação específica do ambiente, testes ou revisão de especialistas.
  • Pare e peça esclarecimentos se os inputs necessários, permissões, limites de segurança ou critérios de sucesso estiverem ausentes.
Perguntas frequentes

O que é 'i18n' e 'L10n'?

'i18n' (Internationalization) é preparar o aplicativo para ser traduzido. 'L10n' (Localization) é o processo de fazer as traduções reais.

O que é um 'Locale'?

É a combinação de um idioma e uma região, como 'pt-BR' para português do Brasil ou 'en-US' para inglês americano.

Por que não devo escrever o texto diretamente no código?

Escrever o texto diretamente dificulta a tradução. Usar chaves de tradução em arquivos separados permite que as traduções sejam gerenciadas e atualizadas facilmente sem alterar o código principal.

Detalhes

Descrição original do autor

Internationalization and localization patterns. Detecting hardcoded strings, managing translations, locale files, RTL support.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3303
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas