⬅️ Back to Home Domain

Home and AppShell Placement

Home is designed to be reachable as a public route and to remain minimal.

Intent

  • Keep the root landing page fast and predictable.
  • Avoid any dependency on authenticated-only UI chrome.
  • Avoid triggering data queries before the user is authenticated (or in demo mode).

Practical implications

  • Home uses only:
    • useAuth() for { user, loading, loginAsDemo }
    • react-router navigation/redirects
    • a small MUI card layout
  • Home does not:
    • use React Query
    • call backend APIs
    • assume AppShell layout (AppBar/Sidebar)

This separation reduces flicker and prevents early requests that would immediately redirect on 401.

  • If the user chooses Demo Mode, the app transitions to normal in-app navigation by routing to /dashboard.
  • If the user signs in, the Auth domain handles OAuth and hydration, then also routes to /dashboard.

Back to top