Aller au contenu
Krizaka TS
Krizaka TS

Démarrer

Les briques backend TypeScript de chaque produit Krizaka — ce qu'elles sont, ce qu'elles vous demandent, comment en installer une.

Krizaka TS est le pendant TypeScript de Krizaka Java : le code backend transversal dont chaque produit a besoin — comptes, réglages, clés d'API, webhooks, organisation, bilan hebdomadaire — écrit une fois, avec un seul auteur et une seule version. Chaque paquet est publié sur npm sous @krizaka/ (Apache-2.0), en module ES avec ses types, pour Node.js 22 et plus.

Choisir un paquet

PaquetCe que c’estSur npm
@krizaka/authComptes et rôles : profil, changement de courriel par lien, mot de passe, sessions, rôles en données.0.3.0
@krizaka/settingsLa configuration comme donnée : un registre typé, utilisateur avant espace avant global, chaque changement audité.0.1.0
@krizaka/api-keysDes clés d’API créées, renouvelées, révoquées et authentifiées ; montrées une fois, seul un hash est gardé.0.1.0
@krizaka/webhooksDes webhooks signés et idempotents, dans les deux sens : livrés avec reprises, vérifiés et appliqués une fois.0.2.0
@krizaka/organizeUn nom, un avatar, des étiquettes et des collections pour toute entité, avec un kit de conformité.0.3.0
@krizaka/briefLe bilan de la semaine : quelques recommandations chiffrées, chacune avec une action.0.1.0

Chaque page a la commande d'installation, le README du paquet, tous les noms qu'il exporte et son journal des versions.

Ce qu'un paquet vous demande

Un paquet est générique. Il n'importe rien d'un produit, ne lit aucune variable d'environnement, n'utilise ni SDK de fournisseur, ni horloge cachée, ni client de base de données. Ce dont il a besoin arrive en paramètre, et ce qu'il décide est une donnée :

  • Des ports pour tout le reste : un stockage, un envoi de courriel, une façon de hacher un mot de passe. Le paquet apporte les règles ; vous apportez l'adaptateur.
  • L'horloge est passée en paramètre (une Clock, ou now), pour qu'un test dise quelle heure il est.
  • Une base de données est une fonction : quand un paquet stocke dans PostgreSQL, vous lui passez une fonction query — pas d'ORM, pas de client à nous.
  • Les règles sont des données : portées, rôles, réglages, limites sont déclarés par le produit, pas codés dans le paquet.
  • Les refus ont des codes stables, pour qu'un produit les traduise dans ses propres réponses HTTP.

Quand un paquet stocke, son test d'intégration tourne sur un vrai PostgreSQL, et un stockage livre un kit de contrat que chaque adaptateur exécute (@krizaka/api-keys/testkit, par exemple).

Installer

bashTerminal
npm install @krizaka/auth

Remplacez le nom par le paquet voulu. Les versions de ces pages sont lues sur npm à la construction du site.

D'où ça vient

Ce site est généré depuis le dépôt à chaque changement : le README, les exports et le journal des versions d'un paquet sont ses propres fichiers, jamais recopiés à la main. Un fait qui manque à une page est ajouté au paquet.

Sur cette page