diff --git a/client/App.tsx b/client/App.tsx index 839935fc..3bdde8fc 100644 --- a/client/App.tsx +++ b/client/App.tsx @@ -364,9 +364,8 @@ const App = () => ( /> } /> - {/* Labs redirects to aethex.studio (Skunkworks R&D) */} - } /> - } /> + {/* Labs page with auto-redirect to aethex.studio (Skunkworks R&D) */} + } /> {/* GameForge Management routes stay local on aethex.dev (Axiom Model - Write/Control) */} ( } /> - {/* GameForge public routes redirect to aethex.foundation/gameforge (Axiom Model - Read-Only Showcase) */} - } /> - } /> + {/* GameForge public route with auto-redirect to aethex.foundation/gameforge (Axiom Model - Read-Only Showcase) */} + } /> - {/* Foundation redirects to aethex.foundation (Non-Profit Guardian - Axiom Model) */} - } /> - } /> + {/* Foundation page with auto-redirect to aethex.foundation (Non-Profit Guardian - Axiom Model) */} + } /> } /> { @@ -41,6 +42,18 @@ export default function Foundation() { return () => clearTimeout(timer); }, [armToast]); + // Auto-redirect countdown + useEffect(() => { + if (isLoading) return; + + if (countdown > 0) { + const timer = setTimeout(() => setCountdown(countdown - 1), 1000); + return () => clearTimeout(timer); + } else { + window.location.href = 'https://aethex.foundation'; + } + }, [countdown, isLoading]); + if (isLoading) { return (
- {/* Informational Banner */} + {/* Informational Banner with Countdown */}
- +

- External Platform: Foundation is hosted at{" "} + Redirecting in {countdown}s... Foundation is hosted at{" "} aethex.foundation @@ -75,7 +88,7 @@ export default function Foundation() { onClick={() => window.location.href = 'https://aethex.foundation'} > - Visit Platform + Go Now

diff --git a/client/pages/GameForge.tsx b/client/pages/GameForge.tsx index f700859c..eec8efcf 100644 --- a/client/pages/GameForge.tsx +++ b/client/pages/GameForge.tsx @@ -27,6 +27,7 @@ export default function GameForge() { const { theme } = useArmTheme(); const armToast = useArmToast(); const [isLoading, setIsLoading] = useState(true); + const [countdown, setCountdown] = useState(5); const toastShownRef = useRef(false); useEffect(() => { @@ -41,6 +42,18 @@ export default function GameForge() { return () => clearTimeout(timer); }, [armToast]); + // Auto-redirect countdown + useEffect(() => { + if (isLoading) return; + + if (countdown > 0) { + const timer = setTimeout(() => setCountdown(countdown - 1), 1000); + return () => clearTimeout(timer); + } else { + window.location.href = 'https://aethex.foundation/gameforge'; + } + }, [countdown, isLoading]); + if (isLoading) { return (
- {/* Informational Banner */} + {/* Informational Banner with Countdown */}
- +

- External Platform: GameForge is hosted at{" "} + Redirecting in {countdown}s... GameForge is hosted at{" "} aethex.foundation/gameforge @@ -109,7 +122,7 @@ export default function GameForge() { onClick={() => window.location.href = 'https://aethex.foundation/gameforge'} > - Visit Platform + Go Now

diff --git a/client/pages/Labs.tsx b/client/pages/Labs.tsx index edfebb64..53603257 100644 --- a/client/pages/Labs.tsx +++ b/client/pages/Labs.tsx @@ -23,6 +23,7 @@ export default function Labs() { const { theme } = useArmTheme(); const armToast = useArmToast(); const [isLoading, setIsLoading] = useState(true); + const [countdown, setCountdown] = useState(5); const toastShownRef = useRef(false); useEffect(() => { @@ -37,6 +38,18 @@ export default function Labs() { return () => clearTimeout(timer); }, [armToast]); + // Auto-redirect countdown + useEffect(() => { + if (isLoading) return; + + if (countdown > 0) { + const timer = setTimeout(() => setCountdown(countdown - 1), 1000); + return () => clearTimeout(timer); + } else { + window.location.href = 'https://aethex.studio'; + } + }, [countdown, isLoading]); + if (isLoading) { return (
- {/* Informational Banner */} + {/* Informational Banner with Countdown */}
- +

- External Platform: Labs is hosted at{" "} + Redirecting in {countdown}s... Labs is hosted at{" "} aethex.studio @@ -131,7 +144,7 @@ export default function Labs() { onClick={() => window.location.href = 'https://aethex.studio'} > - Visit Studio + Go Now