diff --git a/public/ml4elogo.png b/public/ml4elogo.png new file mode 100644 index 0000000..26106c6 Binary files /dev/null and b/public/ml4elogo.png differ diff --git a/src/app/components/Footer.jsx b/src/app/components/Footer.jsx index f98e2c3..a46e50b 100644 --- a/src/app/components/Footer.jsx +++ b/src/app/components/Footer.jsx @@ -45,7 +45,7 @@ export default function Footer() { href="mailto:swaina@nitrkl.ac.in" className="mt-3 inline-flex items-center justify-center rounded-md bg-cyan-900/30 px-3 py-2 text-cyan-200 hover:bg-cyan-800/40 transition" > - ✉️ swaina@nitrkl.ac.in + ✉️ baigm@nitrkl.ac.in diff --git a/src/app/components/Home.jsx b/src/app/components/Home.jsx index 88ddeea..ec035a2 100644 --- a/src/app/components/Home.jsx +++ b/src/app/components/Home.jsx @@ -46,6 +46,198 @@ // // ); // } +// import { Canvas } from "@react-three/fiber"; +// import { OrbitControls } from "@react-three/drei"; +// import { Sphere, Line } from "@react-three/drei"; +// import { useRef } from "react"; +// import { useFrame } from "@react-three/fiber"; +// import { EffectComposer, Bloom } from "@react-three/postprocessing"; +// import { motion } from "framer-motion"; +// import { ReactTyped } from "react-typed"; +// import Navbar from "./Navbar"; +// const Glow = ({ className = "" }) => ( +//
+// ); +// function AnimatedNeuralNode({ position, color, size = 0.08 }) { +// const ref = useRef(); + +// useFrame((state) => { +// if (ref.current) { +// // Subtle pulsing animation +// ref.current.scale.x = 1 + Math.sin(state.clock.elapsedTime * 2) * 0.1; +// ref.current.scale.y = 1 + Math.sin(state.clock.elapsedTime * 2) * 0.1; +// ref.current.scale.z = 1 + Math.sin(state.clock.elapsedTime * 2) * 0.1; +// } +// }); + +// return ( +// +// +// +// ); +// } + +// function NeuralStructure({ +// position = [0, 0, 0], +// color = "#00faff", +// nodeCount = 8, +// }) { +// const nodes = useRef([]); + +// if (nodes.current.length === 0) { +// for (let i = 0; i < nodeCount; i++) { +// nodes.current.push([ +// (Math.random() - 0.5) * 3, +// (Math.random() - 0.5) * 3, +// (Math.random() - 0.5) * 3, +// ]); +// } +// } + +// const connections = []; +// for (let i = 0; i < nodeCount; i++) { +// const connectionCount = 2 + Math.floor(Math.random() * 2); +// const connectedIndices = new Set(); + +// while (connectedIndices.size < connectionCount) { +// const targetIndex = Math.floor(Math.random() * nodeCount); +// if (targetIndex !== i) { +// connectedIndices.add(targetIndex); +// } +// } + +// connectedIndices.forEach((targetIndex) => { +// connections.push([i, targetIndex]); +// }); +// } + +// return ( +// +// {nodes.current.map((pos, i) => ( +// +// ))} + +// {connections.map(([start, end], i) => ( +// +// ))} +// +// ); +// } + +// export default function Home() { +// const structures = []; +// const colors = [ +// "#00faff", +// "#00d9ff", +// "#00bfff", +// "#1e90ff", +// "#007fff", +// "#4dffff", +// ]; + +// for (let i = 0; i < 12; i++) { +// structures.push({ +// position: [ +// (Math.random() - 0.5) * 15, +// (Math.random() - 0.5) * 15, +// (Math.random() - 0.5) * 15, +// ], +// color: colors[i % colors.length], +// nodeCount: 5 + Math.floor(Math.random() * 6), +// }); +// } + +// return ( +//
+// +//
+// +// +// +// MACHINE LEARNING FOR EVERYONE (ML4E) +// + +// +// +// +// +//
+ +// +// +// +// + +// {structures.map((props, i) => ( +// +// ))} + +// 768} +// touches={{ +// ONE: null, +// TWO: null +// }} +// /> + +// {/* 🌟 Bloom Effect for neon glow */} +// +// +// +// +//
+// ); +// } import { Canvas } from "@react-three/fiber"; import { OrbitControls } from "@react-three/drei"; import { Sphere, Line } from "@react-three/drei"; @@ -55,12 +247,14 @@ import { EffectComposer, Bloom } from "@react-three/postprocessing"; import { motion } from "framer-motion"; import { ReactTyped } from "react-typed"; import Navbar from "./Navbar"; + const Glow = ({ className = "" }) => (
); + function AnimatedNeuralNode({ position, color, size = 0.08 }) { const ref = useRef(); @@ -78,8 +272,8 @@ function AnimatedNeuralNode({ position, color, size = 0.08 }) { ); @@ -88,7 +282,7 @@ function AnimatedNeuralNode({ position, color, size = 0.08 }) { function NeuralStructure({ position = [0, 0, 0], color = "#00faff", - nodeCount = 8, + nodeCount = 18, // Fixed node count instead of random }) { const nodes = useRef([]); @@ -133,7 +327,7 @@ function NeuralStructure({ lineWidth={1} transparent opacity={0.6} - toneMapped={false} // allow bloom on lines too + toneMapped={false} /> ))} @@ -151,7 +345,10 @@ export default function Home() { "#4dffff", ]; - for (let i = 0; i < 12; i++) { + // Fixed number of structures (18 as requested between 12-24) + const fixedStructureCount = 18; + + for (let i = 0; i < fixedStructureCount; i++) { structures.push({ position: [ (Math.random() - 0.5) * 15, @@ -159,82 +356,90 @@ export default function Home() { (Math.random() - 0.5) * 15, ], color: colors[i % colors.length], - nodeCount: 5 + Math.floor(Math.random() * 6), + nodeCount: 18, // Fixed node count for all structures }); } return ( -
+
-
- - - +
+ + - MACHINE LEARNING FOR EVERYONE (ML4E) - + + MACHINE LEARNING FOR EVERYONE (ML4E) + - - + + + +
+ + {/* Canvas with fixed height and proper z-index */} +
+ + + + + + {structures.map((props, i) => ( + + ))} + + 768} + minDistance={8} // Prevent zoom out + maxDistance={12} // Prevent zoom in + touches={{ + ONE: null, + TWO: null + }} /> - - + + + + + +
+ + {/* Add some scrollable content to demonstrate scrolling */} +
- - - - - - - {structures.map((props, i) => ( - - ))} - - 768} - touches={{ - ONE: null, - TWO: null - }} - /> - - {/* 🌟 Bloom Effect for neon glow */} - - - -
); } \ No newline at end of file diff --git a/src/app/page.tsx b/src/app/page.tsx index dceae51..bebfa14 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -1,13 +1,191 @@ +// "use client" +// import dynamic from "next/dynamic"; +// import Footer from "./components/Footer" +// const Home = dynamic(() => import("./components/Home"), { ssr: false }); +// export default function App() { +// return ( +// <> +// +// {/* */} +//