Sobre o projeto

Signale é uma biblioteca de logging altamente configurável para Node.js, projetada para ser hackeável e personalizável em seu núcleo. Pode ser usada para fins de logging, relatórios de status e para lidar com o processo de renderização de saída de outros módulos e aplicações Node. As principais características incluem: - **19 loggers prontos para uso**: Incluindo `await`, `complete`, `error`, `debug`, `fatal`, `fav`, `info`, `note`, `pause`, `pending`, `star`, `start`, `success`, `wait`, `warn`, `watch` e `log`. - **Loggers personalizados plugáveis**: Os usuários podem definir loggers personalizados especificando badge, cor, rótulo, nível de log e opções de stream. - **Loggers com escopo**: Crie loggers com escopo do zero ou com base em instâncias existentes, herdando configuração, timers, segredos, streams e outras configurações. - **Modo interativo**: Mensagens de loggers interativos substituem mensagens anteriores, útil para relatórios de progresso. - **Filtragem de segredos**: Informações sensíveis podem ser filtradas das mensagens de log e substituídas por `[secure]`. - **Timers**: Funcionalidade de timer integrada com funções `time()` e `timeEnd()`. - **Múltiplos streams graváveis**: Suporte para um ou múltiplos streams graváveis, configuráveis globalmente ou por tipo de logger. - **Níveis de logging escalonados**: Níveis de log configuráveis incluindo `info`, `timer`, `debug`, `warn` e `error`. - **Interpolação de strings**: Suporte para interpolação de strings no estilo `%s` e `%d`. - **Configuração global**: Configurável através do `package.json` sob o namespace `signale`. - **Configuração local**: Substitua configurações globais por arquivo ou por instância de logger. - **Suporte a TypeScript**: Suporte completo a TypeScript. - **Saída limpa e bonita**: Saída de terminal bem formatada com badges, rótulos, cores e exibição opcional de data/timestamp/nome de arquivo. A biblioteca fornece uma API simples com métodos como `signale.success()`, `signale.error()`, `signale.scope()`, `signale.config()`, `signale.time()`, `signale.timeEnd()`, `signale.disable()`, `signale.enable()`, `signale.addSecrets()` e `signale.clearSecrets()`. Signale é usado por projetos incluindo Boostnote, Docz, Remix by Ethereum, Semantic Release, Shower, Taskbook e Vant. O projeto é licenciado sob MIT e é patrocinado pela Better Stack.