decifra.js
v0.2.1
Published
Formatação humanizada de números, datas, tamanhos e durações para JavaScript e TypeScript. pt-BR de primeira classe.
Maintainers
Readme
Decifra
Formatação humanizada de números, datas, tamanhos e durações para JavaScript e TypeScript. pt-BR de primeira classe.
import { intComma, naturalSize, naturalTime, setDefaultLocale } from 'decifra.js'
setDefaultLocale('pt-BR')
intComma(1234567) // "1.234.567"
naturalSize(5_242_880, { binary: true }) // "5,0 MiB"
naturalTime(new Date(Date.now() - 180_000)) // "há 3 minutos"Instalação
yarn add decifra.jsRequer Node 18+. Apenas ESM.
Locale
Toda função aceita { locale?: 'en' | 'pt-BR' }. Sem opção, usa o default global (inicia em 'en').
import { intComma, setDefaultLocale } from 'decifra.js'
intComma(1234) // "1,234"
intComma(1234, { locale: 'pt-BR' }) // "1.234"
setDefaultLocale('pt-BR')
intComma(1234) // "1.234"API resumida
| Categoria | Funções |
| --- | --- |
| Números | intComma, intWord, ordinal, apNumber, fractional, scientific, clamp |
| Tamanho | naturalSize (SI, IEC binário, GNU) |
| Tempo / data | naturalDelta, naturalTime, naturalDay, naturalDate, preciseDelta |
| Locale | setDefaultLocale, getDefaultLocale |
Documentação completa de cada função, opção e tipo: docs/API.md.
Gere ou atualize a doc localmente com yarn docs (typedoc + typedoc-plugin-markdown a partir do JSDoc do código).
Experimentando localmente
Depois de clonar o repo e rodar yarn install:
yarn demopercorre as 13 funções com entradas e saídas comentadas.yarn cliabre um menu interativo onde você escolhe a função e informa os argumentos.yarn test:runexecuta a bateria de testes.
Changelog
Veja CHANGELOG.md.
Inspiração
Port livre da humanize (Python), com API redesenhada para TypeScript.
Licença
MIT.
