1

Muito obrigado pelo comentário e pela ótima colocação! 🦾

Concordo que o Zod consegue cobrir boa parte desses casos, e acho especialmente interessante quando o objetivo é ter um schema como fonte central para validação, tipos, contratos entre camadas e geração de JSON Schema/OpenAPI.

A diferença que tento estabelecer com o is-kit não é tanto sobre o que o Zod “consegue ou não consegue fazer”, mas sobre qual é a abstração principal.

O Zod parte de schemas e parsing/validation.

O is-kit parte de predicates/type guards reutilizáveis, pensados para serem usados diretamente no control flow normal do TypeScript — if, filter, error handling — e compostos como pequenas funções.

Por isso, não vejo is-kit e Zod como concorrentes. Pelo contrário, acho que podem coexistir muito bem:

schema validation / contracts → Zod
pequenos type guards e narrowing no control flow → is-kit

Em nosso caso, manter essa fronteira tem funcionado bem e deixa cada ferramenta responsável por um problema mais específico.

Mas essa é justamente uma das discussões que mais me interessam no projeto 😸

O que você acha dessa separação? Em quais casos você preferiria manter tudo centralizado no Zod?

Obrigado novamente pelo feedback — adoraria ouvir mais opiniões sobre isso!

Carregando publicação patrocinada...