diff --git a/docs/reference/forge-logo-light.svg b/docs/reference/forge-logo-light.svg index eb3a0c6..1418d6e 100644 --- a/docs/reference/forge-logo-light.svg +++ b/docs/reference/forge-logo-light.svg @@ -36,12 +36,4 @@ letter-spacing="-2" fill="#0f172a">RGE - - THE CORE DATA PLATFORM diff --git a/docs/reference/forge-logo.svg b/docs/reference/forge-logo.svg index 758403d..5a10e59 100644 --- a/docs/reference/forge-logo.svg +++ b/docs/reference/forge-logo.svg @@ -43,12 +43,4 @@ letter-spacing="-2" fill="url(#text-grad)">RGE - - THE CORE DATA PLATFORM diff --git a/portal/frontend/auth/useAuth.tsx b/portal/frontend/auth/useAuth.tsx index a6d2fa8..86be9b6 100644 --- a/portal/frontend/auth/useAuth.tsx +++ b/portal/frontend/auth/useAuth.tsx @@ -110,13 +110,17 @@ export function AuthProvider({ children }: { children: React.ReactNode }) { token: null, // session cookie — no bearer token needed }); } catch { + // Backend unreachable — enter demo mode so the UI renders + const isDemo = !process.env.NEXT_PUBLIC_API_BASE_URL && typeof window !== "undefined"; setState({ isConnecting: false, - isAuthenticated: false, + isAuthenticated: isDemo, noAccess: false, provider: "azure_ad", - user: null, - role: null, + user: isDemo + ? { name: "Demo User", email: "demo@forge.dev", initials: "DU" } + : null, + role: isDemo ? "Viewer" : null, token: null, }); } diff --git a/portal/frontend/vercel.json b/portal/frontend/vercel.json new file mode 100644 index 0000000..92fdadc --- /dev/null +++ b/portal/frontend/vercel.json @@ -0,0 +1,5 @@ +{ + "rewrites": [ + { "source": "/", "destination": "/about" } + ] +}