Skip to main content

Surfaces Web et administration

Cette page inventorie les routes de page réellement présentes sous web/src/app. Elle complète la cartographie métier par une vue exhaustive des surfaces Next.js. Sources principales :
  • web/src/app/**/page.tsx
  • web/src/app/(auth)/layout.tsx
  • web/src/app/admin/layout.tsx
  • web/src/config/navigation.ts
  • web/src/components/admin/config/navigation.ts

Couverture

Le dépôt contient actuellement 77 routes de page : Les handlers Next.js (route.ts) et les routes HTTP Convex sont documentés dans API HTTP Convex.

Application et contenu

Le groupe (app) partage le layout principal. Il mélange des pages publiques et des espaces qui nécessitent une session.

Compétition

Contenu, compte et information

La navigation marque /dashboard, /clubs/mon-club et /profile comme nécessitant une authentification.

Authentification

Le layout auth redirige un utilisateur déjà connecté vers /dashboard, sauf pour les routes de vérification email et d’onboarding EA qui restent accessibles avec une session active.

Administration

web/src/app/admin/layout.tsx impose une session avec user.role === ADMIN. Les permissions backend plus larges de certaines fonctions (MODERATOR sur des opérations ciblées) ne rendent pas pour autant le layout admin accessible aux modérateurs.

Gestion

  • /admin
  • /admin/dashboard — redirection vers /admin
  • /admin/announcements
  • /admin/articles
  • /admin/articles/new
  • /admin/articles/[articleId]
  • /admin/articles/[articleId]/preview
  • /admin/articles/comments

Compétition

  • /admin/clubs
  • /admin/leagues
  • /admin/matches
  • /admin/matches/postponed
  • /admin/matches/lineups
  • /admin/match-forfeits
  • /admin/bets
  • /admin/totw
  • /admin/season-awards

Modération

  • /admin/users
  • /admin/disputes
  • /admin/sanctions
  • /admin/transfers

Données et opérations

  • /admin/stats
  • /admin/stats/players
  • /admin/stats/clubs
  • /admin/audit
  • /admin/search
  • /admin/billing
  • /admin/billing/webhooks
  • /admin/emails
  • /admin/notifications
  • /admin/crons
  • /admin/crons/[cronId]
  • /admin/settings
La sidebar admin expose les groupes Gestion, Compétition, Modération, Données et Système. Les routes de création, preview, détail cron, webhooks et recherche sont des sous-surfaces ou des accès contextuels qui ne sont pas toutes des entrées de premier niveau.

Design system

Le dépôt publie huit routes de référence UI :
  • /design-system
  • /design-system/colors
  • /design-system/typography
  • /design-system/components
  • /design-system/recipes
  • /design-system/spacing
  • /design-system/effects
  • /design-system/audit
Le layout de ce groupe ne contient pas de garde de rôle. Ces pages décrivent les tokens, composants, effets et recettes de l’interface CEL.

Routes autonomes

  • /search : recherche globale Algolia sur clubs, joueurs, matchs, articles et ligues.
  • /offline : page de repli hors connexion.

Règle de maintenance

Toute création, suppression ou redirection d’une route page.tsx doit mettre à jour cette page. Une nouvelle opération HTTP doit mettre à jour docs/api-http.md.
Last modified on July 16, 2026