- {dots.map((dot, i) => (
+ {/* Animated particle background */}
+
- {/* Logo/Title */}
-
-
- ML4E
-
-
- Machine Learning For Everyone
-
-
-
- {/* Loading Bar */}
-
-
-
-
- {/* Glowing effect on progress bar */}
-
-
-
- {/* Progress Percentage */}
-
- {Math.floor(Math.min(progress, 100))}%
-
-
-
- {/* Loading Text */}
-
- Initializing Neural Networks...
-
+ {/* Hexagonal grid background */}
+
- {/* Corner Accents */}
-
-
-
-
+ {/* Main loading container */}
+
+ {/* Glowing border effect */}
+
+
+
+ {/* Main card */}
+
+ {/* Header with animated logo */}
+
+
+ {/* Holographic logo */}
+
+ {/* Outer ring */}
+
+
+ {/* Middle ring */}
+
+
+
+
+ {/* Inner core */}
+
+
+ {/* ML4E text */}
+
+
+ ML4E
+
+
+
+
+
+ {/* Title */}
+
+
+ MACHINE LEARNING
+
+
+
+ For Everyone
+
+
+
+
+ {/* Progress section */}
+
+ {/* Progress bar with tech details */}
+
+
+
+ SYSTEM LOADING
+
+
+ {Math.floor(progress)}%
+
+
+
+ {/* Main progress bar */}
+
+ {/* Gradient fill */}
+
+ {/* Shimmer effect */}
+
+
+
+ {/* Scanning line */}
+
+
+ {/* Glow effect */}
+
+
+
+ {/* Progress indicators */}
+
+ {[0, 25, 50, 75, 100].map((mark) => (
+
+ {mark}%
+
+ ))}
+
+
+
+ {/* Loading text with typing effect */}
+
+
+ â–¶ {loadingTexts[loadingTextIndex]}
+
+ â–ˆ
+
+
+
+
+ {/* Tech stats */}
+ {/*
+ {[
+ { label: "CPU", value: "Neural Core", color: "from-cyan-400 to-blue-400" },
+ { label: "RAM", value: "64GB Quantum", color: "from-blue-400 to-purple-400" },
+ { label: "GPU", value: "RTX AI", color: "from-purple-400 to-pink-400" },
+ { label: "NET", value: "10Gbps", color: "from-pink-400 to-cyan-400" }
+ ].map((stat, index) => (
+
+
+ {stat.label}
+
+
+ {stat.value}
+
+
+ ))}
+
*/}
+
+
+ {/* Bottom indicators */}
+
+
+
+
+ v2.4.1 • NIT ROURKELA
+
+
+
+
+
+ {/* Floating tech elements */}
+
+
+
+
+ {/* Ambient audio visualizer */}
+
+ {Array.from({ length: 30 }).map((_, i) => (
+
+ ))}
+
);
}
export default function App() {
- const [isLoading, setIsLoading] = useState(true);
- const [showHome, setShowHome] = useState(false);
+ const [hasSeenIntro, setHasSeenIntro] = useState
(null);
+ const [isLoading, setIsLoading] = useState(false);
+ const [isMounted, setIsMounted] = useState(false);
useEffect(() => {
- // Start loading the Home component immediately
- setShowHome(true);
+ setIsMounted(true);
+
+ if (typeof window !== 'undefined') {
+ const seen = sessionStorage.getItem('ml4e_hasSeenIntro');
+
+ if (seen === 'true') {
+ setHasSeenIntro(true);
+ setIsLoading(false);
+ } else {
+ setHasSeenIntro(false);
+ setIsLoading(true);
+ }
+ }
}, []);
+ const handlePreloaderComplete = () => {
+ if (typeof window !== 'undefined') {
+ sessionStorage.setItem('ml4e_hasSeenIntro', 'true');
+ }
+ setHasSeenIntro(true);
+ setIsLoading(false);
+ };
+
+ if (!isMounted || hasSeenIntro === null) {
+ return (
+
+ );
+ }
+
return (
<>
-
+
{isLoading && (
- setIsLoading(false)} />
+
)}
- {/* Home component loads in background while preloader shows */}
-
- {showHome && (
-
- )}
+ {/* Main content */}
+
+
+ {!isLoading && hasSeenIntro && (
+
+
+
+
+
+ )}
+
>
);
-}
+}
\ No newline at end of file