Contribuer
Le guide complet est .github/CONTRIBUTING.md, et c’est lui qui est tenu à jour. Cette page donne la forme du cycle, pour que vous sachiez dans quoi vous entrez avant de cloner. Le code, les commentaires et la documentation s’écrivent en anglais ; l’interface est livrée en français et en anglais, le français étant la langue source.
Le faire tourner
Section intitulée « Le faire tourner »Il vous faut Node 22.12 ou plus récent, pnpm 12.5.1, et Docker pour le PostgreSQL local.
-
pnpm install, puisdocker compose -f docker-compose.dev.yml up -dpour la base de données. Cette pile tourne sous son propre projet compose, si bien qu’elle se tient à côté d’une instance auto-hébergée. -
Copiez
apps/api/.env.exampleversapps/api/.envet renseignez ses secrets, sinon l’étape suivante s’arrête sur une URL de base de données vide. -
pnpm --filter @badlen/shared build, avant que quoi que ce soit d’autre ne passe le typage : l’API lit ce paquet à travers sa sortie compilée. -
pnpm --filter @badlen/api exec prisma migrate devpour le schéma, puispnpm dev, qui sert l’API sur:3001et l’application web sur:5173.
L’espace de travail compte cinq paquets : apps/api (NestJS, Prisma), apps/web
(React, Vite, Tailwind), packages/shared (les types du domaine, le schéma d’import, la
monnaie en Decimal), packages/mcp, et docs (Astro et Starlight), qui est ce site ;
tools/ à côté d’eux porte les balayages lancés contre une instance vivante.
Ce site s’écrit dans le même dépôt que le code qu’il décrit. Ses pages sont les fichiers
Markdown de docs/src/content/docs/, imbriqués un niveau plus bas que ce chemin ne le
laisse croire : la documentation est dans docs/src/content/docs/docs/, sa version
française dans docs/src/content/docs/fr/docs/, et pnpm --filter @badlen/docs dev sert
l’ensemble. L’anglais fait foi et le français le suit ; pnpm translations dit quelles
pages ont pris du retard. Le guide porte le reste, sous The documentation site.
Les contrôles
Section intitulée « Les contrôles »Les mêmes contrôles que lance la CI, depuis la racine du dépôt :
pnpm format:checkpnpm -r lintpnpm -r typecheckpnpm -r testpnpm -r buildLes suites qui demandent un vrai PostgreSQL s’excluent elles-mêmes de ce passage, et la CI
vérifie qu’aucune ne l’a fait. Rejouez-les comme le fait la CI, sur un port à vous :
PG_PORT=55613 pnpm live.
Ouvrir une pull request
Section intitulée « Ouvrir une pull request »Un changement de schéma livre sa migration générée sous apps/api/prisma/migrations, une
nouvelle chaîne visible par l’utilisateur existe à la fois dans locales/fr et
locales/en avec les mêmes clés, et aucun chiffre réel, numéro de compte ou secret ne va
dans le diff. Les sujets de commit sont concis et à l’impératif, comme dans Add cost
basis to positions view. Gardez la prose en anglais, gardez-en les tirets dehors, et
n’ajoutez aucune ligne de co-auteur.
Les contributions sont sous licence AGPL-3.0, et le code de conduite s’applique. Un problème de sécurité passe par SECURITY.md, jamais par une pull request publique.