Files
lib-auth/README.md
2026-04-01 15:17:46 +02:00

75 lines
1.4 KiB
Markdown

# @packages/auth
Package d'authentification réutilisable pour projets React + Express.
## Exports
- `@packages/auth/react`
- `@packages/auth/server`
## Contrat Prisma minimal
Le package serveur suppose un socle Auth.js compatible, avec les modèles suivants:
- `User`
- `Account`
- `Session`
- `VerificationToken`
Champs attendus pour le flux local email/mot de passe et reset:
- `User.id`
- `User.email`
- `User.name`
- `User.image`
- `User.passwordHash`
- `User.emailVerified`
- `Session.sessionToken`
- `Session.userId`
- `Session.expires`
- `VerificationToken.identifier`
- `VerificationToken.token`
- `VerificationToken.expires`
Le package n'impose pas les champs métier supplémentaires. Ils peuvent rester propres à chaque application.
## Intégration côté serveur
Le noyau serveur expose:
- `createAuthModule`
- `registerAuthApiRoutes`
Les points configurables importants:
- `signInPath`
- `authenticatedRedirectPath`
- `messages`
- `passwordReset`
- `onUserRegistered`
- `onSessionValidated`
## Intégration côté React
Le package React expose:
- `createAuthClient`
- `AuthGuard`
- `LoginForm`
- `PasswordResetRequestForm`
- `PasswordResetConfirmForm`
`createAuthClient` accepte notamment `defaultOAuthCallbackUrl` pour éviter toute dépendance à une route post-login fixe.
## Build
```bash
npm run build --workspace @packages/auth
```
## Watch
```bash
npm run dev --workspace @packages/auth
```