Sobre o projeto

Valibot é uma biblioteca de esquemas de código aberto para validar dados estruturais em ambientes JavaScript. De acordo com seu README, é projetada para validar dados recebidos de servidores, entradas de formulários ou arquivos de configuração, e não possui dependências, permitindo execução em qualquer ambiente JavaScript. Principais destaques listados pelo projeto incluem: - Totalmente type-safe com inferência estática de tipos - Tamanho de pacote reduzido, começando em menos de 700 bytes - Validação de strings a objetos complexos - Código aberto e totalmente testado com cobertura de 100% - Muitas ações de transformação e validação incluídas - Estrutura de código bem organizada, sem dependências - API mínima e legível O README explica que um esquema descreve um conjunto de dados estruturados, semelhante a uma definição de tipo TypeScript, mas, ao contrário dos tipos TypeScript, pode ser executado em tempo de execução para garantir a segurança de tipos de dados desconhecidos. O exemplo cria um esquema de login com campos de e-mail e senha, infere o tipo TypeScript de saída e usa `v.parse` para validar dados. Além de `parse`, a biblioteca oferece uma API baseada em não-exceções com `safeParse` e uma função de guarda de tipo com `is`. O projeto enfatiza um design modular baseado em muitas funções pequenas e independentes, cada uma com uma tarefa única. Isso permite que bundlers removam código não utilizado via declarações de importação, o que o README afirma poder reduzir o tamanho do pacote em até 95% em comparação com Zod. Também torna o código mais fácil de estender e testar. Para usuários vindos do Zod, o README aponta para um artigo de migração e um guia de migração. O projeto é licenciado sob MIT e foi criado por Fabian Hiller como parte de uma tese de bacharelado na Stuttgart Media University.