Contribuer
Ajouter un composant
# 1. Générer la primitive shadcn si elle existe
cd packages/ui
bunx shadcn@latest add dialog --yes --overwrite
# 2. Créer le wrapper (API publique)
mkdir src/components/dialog
# Dialog.tsx · Dialog.stories.tsx · Dialog.test.tsx · index.ts
# 3. Exporter depuis src/index.ts
Le code généré par le CLI shadcn fonctionne tel quel : ses classes
(bg-primary, bg-muted…) résolvent vers la couche sémantique des tokens.
Conventions
- TypeScript
strict, pas deany, unions explicites pour les variantes. classNametoujours en dernier danscn().PascalCasepour les composants, dossiers en minuscules.- Une story et un test minimum par composant.
Checks avant commit
bun run format:check
bun run lint
bun run validate:tokens
bun run build
bun run test
Changesets
Quand une modification impacte un package publié :
bun changeset # décrire l'impact (patch / minor / major)
bun run version-packages
bun run release # publication (registre privé)
Process RFC
Pour un composant ou un changement structurant, ouvrir une RFC décrivant la motivation, l'API proposée et les alternatives considérées avant l'implémentation.