Aller au contenu principal

Logo Pithos Pithos

Pourquoi cette jarre

Pithos est une bibliothèque utilitaire TypeScript moderne qu'on ouvre quand on en a assez de réécrire les mêmes helpers pour la cinquième fois. Conçue comme une alternative unifiée à Lodash, Zod et Neverthrow avec zéro dépendance, elle centralise tout au même endroit, entièrement typé et rigoureusement testé, pour que vous passiez votre temps à livrer plutôt qu'à chercher.

D'utilitaires à écosystème

Pithos a commencé comme une bibliothèque utilitaire, puis a évolué en un écosystème complet en fusionnant deux projets autonomes : Kanon (validation de schémas) et Zygos (gestion fonctionnelle des erreurs).

Une philosophie unifiée : faire confiance à TypeScript au compile-time, valider aux frontières.


Le constat de départ

  • « Où est-ce que j'ai mis cet utilitaire, déjà ? »
  • Du code réécrit sans cesse, qui n'est jamais vraiment éprouvé.
  • D'excellents snippets éparpillés entre les projets, qui ne s'améliorent jamais.
  • Les vulnérabilités croissantes dans la chaîne d'approvisionnement des dépendances externes.

L'espoir dans la jarre

  • Des utilitaires éprouvés, enfin réunis, qui s'améliorent au fil du temps.
  • Des builds légers et prévisibles, libérés de toute dépendance.
  • TypeScript qui veille : inférence complète, aucune fuite any.
  • Une migration en douceur, grâce à des API déjà connues.

Le mythe derrière le nom

La « boîte » de Pandore était en réalité une grande jarre : pithos en grec.
Ce projet embrasse cette histoire : une seule jarre contenant à la fois les problèmes que nous avons rencontrés et les solutions que nous avons conçues pour les résoudre.


Ce que vous y trouverez

  • Arkhe - Utilitaires de données et types TypeScript fondamentaux (la base).
  • Kanon - Validation de schémas avec une approche légère, à la Zod.
  • Zygos - Patterns Result/Either/Option/Task pour des flux sûrs et composables.
  • Sphalma - Error factories pour des erreurs typées et cohérentes.
  • Taphos - Utilitaires dépréciés avec des chemins de migration clairs vers les API modernes/natives.

Comment s'en servir

  • Importez uniquement ce dont vous avez besoin : tout est tree-shakable.
  • Mélangez et combinez : validation (Kanon) + flux sûrs (Zygos) + helpers de base (Arkhe).
  • Appuyez-vous sur la documentation et les commentaires TSDoc ; chaque fonction est décrite.

Prochaines étapes