diff --git a/frontend/public/logo.png b/frontend/public/logo.png new file mode 100644 index 0000000..2cd032e Binary files /dev/null and b/frontend/public/logo.png differ diff --git a/frontend/src/components/Layout.tsx b/frontend/src/components/Layout.tsx index 8edd57e..e5285c1 100644 --- a/frontend/src/components/Layout.tsx +++ b/frontend/src/components/Layout.tsx @@ -12,13 +12,28 @@ import { Server, Users } from 'lucide-react' -import { useState } from 'react' +import { useState, useEffect } from 'react' export default function Layout() { const { user, clearAuth } = useAuthStore() const navigate = useNavigate() const location = useLocation() - const [sidebarOpen, setSidebarOpen] = useState(true) + const [sidebarOpen, setSidebarOpen] = useState(false) + + // Set sidebar open by default on desktop, closed on mobile + useEffect(() => { + const handleResize = () => { + if (window.innerWidth >= 1024) { + setSidebarOpen(true) + } else { + setSidebarOpen(false) + } + } + + handleResize() // Set initial state + window.addEventListener('resize', handleResize) + return () => window.removeEventListener('resize', handleResize) + }, []) const handleLogout = () => { clearAuth() @@ -48,6 +63,14 @@ export default function Layout() { return (
+ {/* Mobile backdrop overlay */} + {sidebarOpen && ( +
setSidebarOpen(false)} + /> + )} + {/* Sidebar */}
{/* Header */}
-
-
+
+ Calypso Logo { + // Fallback to text if image not found + const target = e.target as HTMLImageElement + target.style.display = 'none' + const fallback = target.nextElementSibling as HTMLElement + if (fallback) fallback.style.display = 'flex' + }} + /> +
C
-

Calypso

+
+

Calypso

+

Dev Release V.1

+
+
{/* Page content */}
diff --git a/frontend/src/pages/Login.tsx b/frontend/src/pages/Login.tsx index 83b524f..b58b760 100644 --- a/frontend/src/pages/Login.tsx +++ b/frontend/src/pages/Login.tsx @@ -31,11 +31,29 @@ export default function LoginPage() { return (
-
-

- AtlasOS - Calypso +
+ {/* Logo */} +
+ Calypso Logo +
+ {/* Title */} +

+ Calypso

+ {/* Version */} +

+ Dev Release V.1 +

+ {/* Subtitle */}

+ Adastra Backup Storage Appliance +

+ {/* Sign in instruction */} +

Sign in to your account

diff --git a/frontend/src/pages/System.tsx b/frontend/src/pages/System.tsx index 8add6bb..bd3af61 100644 --- a/frontend/src/pages/System.tsx +++ b/frontend/src/pages/System.tsx @@ -18,9 +18,6 @@ export default function System() { {/* Top Navigation */}
- {/* Breadcrumbs */}
diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts index f4ddf09..7cb9b11 100644 --- a/frontend/vite.config.ts +++ b/frontend/vite.config.ts @@ -13,6 +13,11 @@ export default defineConfig({ server: { host: '0.0.0.0', // Listen on all interfaces to allow access via IP address port: 3000, + allowedHosts: [ + 'atlas-demo.avt.data-center.id', + 'localhost', + '.localhost', + ], proxy: { '/api': { target: 'http://localhost:8080',