diff --git a/frontend/README.md b/frontend/README.md index e215bc4..659f484 100644 --- a/frontend/README.md +++ b/frontend/README.md @@ -34,3 +34,25 @@ You can check out [the Next.js GitHub repository](https://github.com/vercel/next The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js. Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details. +## Auth-Architektur (Grundlagen) + +### Prinzipien +- Guard-first Architektur +- Keine Auth-Logik in Services +- Controller bleiben dünn +- Zentrale User-Wahrheit über Request-Kontext + +### RequestUser +- `req.user` ist der einzige User-Kontext im Request +- Typ: `RequestUser` +- ID ist **number** (DB-kompatibel) +- Kann `null` sein (Public Routes) + +```ts +export type UserRole = 'USER' | 'ADMIN' | 'MOD'; + +export type RequestUser = { + id: number; + role: UserRole; + isFake?: boolean; +} | null;