Web
Web Pages Explained
Pages de l'application Web
Routes publiques
| Route | Fichier | Description |
|---|---|---|
/ | (public)/index.tsx | Page d'accueil |
/faq | (public)/faq.tsx | Foire aux questions |
Routes auth (non authentifié)
| Route | Fichier | Description |
|---|---|---|
/sign-in | (auth)/sign-in.tsx | Connexion email/password + OAuth |
/sign-up | (auth)/sign-up.tsx | Inscription |
/forgot-password | (auth)/forgot-password.tsx | Demande de réinitialisation |
/reset-password | (auth)/reset-password.tsx | Saisie nouveau mot de passe |
Routes protégées (auth requis)
Guard dans (protected)/route.tsx — beforeLoad: appel orpc.getMe, redirige vers /sign-in si non authentifié.
Zone commune (user + admin)
| Route | Fichier | Description |
|---|---|---|
/dashboard | (protected)/dashboard.tsx | Tableau de bord principal |
/files | (protected)/files.tsx | Liste des fichiers assignés à l'utilisateur |
/chunk-visualisation/$fileId | (protected)/chunk-visualisation.$fileId.tsx | Visualisation et annotation des chunks d'un fichier |
Zone admin (rôle admin requis)
| Route | Fichier | Description |
|---|---|---|
/admin | (protected)/admin/admin.tsx | Dashboard admin |
/admin/files | (protected)/admin/files.tsx | Gestion de tous les fichiers (upload, suppression, assignation) |
/admin/qa-visualisation/$fileId | (protected)/admin/qa-visualisation.$fileId.tsx | Visualisation et annotation des Q&A pairs |
/admin/assignments | (protected)/admin/assignments.tsx | Gestion des assignations fichiers → utilisateurs |
/admin/chunks | (protected)/admin/chunks.tsx | Ajout de chunks manuels |
/admin/tags | (protected)/admin/tags.tsx | Gestion des tags (CRUD) |
/admin/roles | (protected)/admin/roles.tsx | Gestion des rôles applicatifs et associations role-tag |
Notes d'implémentation
- Guard RBAC: le guard protégé vérifie uniquement l'authentification. Le contrôle admin est fait par route individuelle ou via
adminProcedurecôté serveur. - Contexte ORPC:
__root.tsxcrée le client ORPC et l'injecte dans le contexte TanStack Router, accessible dans tous lesbeforeLoadet loaders. - TanStack Router: le routage est file-based. Les groupes
(public),(auth),(protected)sont des route groups (pas de segment URL). - Sources chunks: depuis
chunk-visualisation, les admins voient des liens directs vers les chunks dans les réponses du chatbot (viaWEB_APP_BASE_URL).
Kalli