Repolode
slang-i18n

slang-i18n/slang

Biblioteca de internacionalização com segurança de tipos para Dart e Flutter que gera acessores de tradução a partir de arquivos JSON, YAML, CSV ou ARB.

Estrelas
619
Forks
66
Issues abertas
41
Último commit
há 3 meses

O que é?

Slang é uma biblioteca de internacionalização para Dart e Flutter. Você escreve as traduções em arquivos JSON, YAML, CSV ou ARB, e ela gera código Dart para que cada tradução seja acessada como um método ou uma propriedade tipada. Chaves ausentes e nomes de parâmetros incorretos são detectados em tempo de compilação, em vez de aparecerem como erros durante a execução.

Os acessores gerados dispensam a análise dos arquivos de tradução durante a execução. A biblioteca oferece suporte a strings com parâmetros, pluralização, contextos personalizados baseados em enum, traduções vinculadas, trechos RichText e formatação de números e datas de acordo com a localidade. Namespaces dividem arquivos de tradução grandes em arquivos menores, e a biblioteca funciona tanto em projetos Dart puros quanto em apps Flutter.

O pacote inclui uma ferramenta de linha de comando para analisar traduções não utilizadas ou ausentes, normalizar arquivos, mover chaves, migrar arquivos ARB para JSON e atualizar a configuração de localidade do iOS.

Recursos principais

  • 01Gera acessores Dart tipados para detectar erros de digitação e argumentos ausentes em tempo de compilação.
  • 02Lê traduções de arquivos JSON, YAML, CSV ou ARB.
  • 03Oferece suporte a pluralização, contextos personalizados, parâmetros tipados e RichText.
  • 04Formata números e datas de acordo com a localidade usando o pacote intl.
  • 05Inclui uma CLI para analisar, normalizar e migrar arquivos de tradução.

Casos de uso

  • Adicionar suporte a vários idiomas a um app Flutter com strings verificadas em tempo de compilação.
  • Localizar uma ferramenta de linha de comando ou aplicação de servidor em Dart puro.
  • Migrar um projeto Flutter existente baseado em ARB para um fluxo de trabalho com JSON ou YAML.
  • Detectar traduções não utilizadas ou ausentes em um projeto grande com várias localidades.

Início rápido

  1. 1

    Adicione os pacotes slang e slang_flutter ao pubspec.yaml

  2. 2

    Crie arquivos de tradução JSON, como en.i18n.json, em lib/i18n

  3. 3

    Gere o código de tradução em Dart

    dart run slang
  4. 4

    Inicialize a localidade em main() e use as traduções por meio de t

Antes de usar

  • Requer um projeto Dart ou Flutter; não pode ser usado em outras linguagens.

Tópicos

Perguntas frequentes

O que é slang?
Biblioteca de internacionalização com segurança de tipos para Dart e Flutter que gera acessores de tradução a partir de arquivos JSON, YAML, CSV ou ARB. Slang é uma biblioteca de internacionalização para Dart e Flutter. Você escreve as traduções em arquivos JSON, YAML, CSV ou ARB, e ela gera código Dart para que cada tradução seja acessada como um método ou uma propriedade tipada. Chaves ausentes e nomes de parâmetros incorretos são detectados em tempo de compilação, em vez de aparecerem como erros durante a execução.
slang é gratuito? Qual é a licença?
slang é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
slang ainda é mantido?
Atualizado nos últimos 6 meses. O último commit de slang foi em 6 de ago. de 2026.
Para que posso usar slang?
Adicionar suporte a vários idiomas a um app Flutter com strings verificadas em tempo de compilação. Localizar uma ferramenta de linha de comando ou aplicação de servidor em Dart puro. Migrar um projeto Flutter existente baseado em ARB para um fluxo de trabalho com JSON ou YAML. Detectar traduções não utilizadas ou ausentes em um projeto grande com várias localidades.
Como instalar slang?
Adicione os pacotes slang e slang_flutter ao pubspec.yaml Crie arquivos de tradução JSON, como en.i18n.json, em lib/i18n Gere o código de tradução em Dart: dart run slang Inicialize a localidade em main() e use as traduções por meio de t
Onde consigo slang?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/slang-i18n/slang

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados