From cd7e25df7f723794bef6b22a8adcd9e8ba20dcff Mon Sep 17 00:00:00 2001 From: Harsh Pandey <160850571+201Harsh@users.noreply.github.com> Date: Sat, 20 Jun 2026 19:05:31 +0530 Subject: [PATCH 01/13] update IRIS.tsx --- client/app/Landing/IRIS.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/app/Landing/IRIS.tsx b/client/app/Landing/IRIS.tsx index de3ca14..df5afd5 100644 --- a/client/app/Landing/IRIS.tsx +++ b/client/app/Landing/IRIS.tsx @@ -367,4 +367,4 @@ const IRIS = () => { ); }; -export default IRIS; +export default IRIS; \ No newline at end of file From b3bbf1cd234c67a2d2487a4a72dd52b3ec3ce604 Mon Sep 17 00:00:00 2001 From: Harsh Pandey <160850571+201Harsh@users.noreply.github.com> Date: Sat, 20 Jun 2026 19:05:45 +0530 Subject: [PATCH 02/13] feat: implement IRIS landing page with GSAP animations and scroll-triggered suspense components --- client/app/Landing/IRIS.tsx | 536 ++++++++++++++++++++++-------------- 1 file changed, 332 insertions(+), 204 deletions(-) diff --git a/client/app/Landing/IRIS.tsx b/client/app/Landing/IRIS.tsx index df5afd5..10f9a02 100644 --- a/client/app/Landing/IRIS.tsx +++ b/client/app/Landing/IRIS.tsx @@ -3,7 +3,6 @@ import gsap from "gsap"; import { useGSAP } from "@gsap/react"; import { ScrollTrigger } from "gsap/ScrollTrigger"; import Header from "../Components/Header"; -import { useRef, useState, useEffect } from "react"; import Footer from "../Components/Footer"; import Image from "next/image"; import LogoLoop from "../utils/LogoLoop"; @@ -25,10 +24,127 @@ import { RiGeminiFill } from "react-icons/ri"; import { BsAnthropic } from "react-icons/bs"; import { TbBrandSocketIo } from "react-icons/tb"; import IrisHero from "../Components/UI/IrisHero"; -import { MacbookScroll } from "../constants/MacbookScroll"; -import { ContainerScroll } from "../constants/ContainerScroll"; -import { IRISCompare } from "../Components/UI/IRISCompare"; -import SystemsSection from "../Components/UI/SystemSection"; +import React, { useRef, useState, useEffect, Suspense } from "react"; +import dynamic from "next/dynamic"; + +const MacbookScroll = dynamic( + () => import("../constants/MacbookScroll").then((m) => m.MacbookScroll), + { ssr: false }, +); +const ContainerScroll = dynamic( + () => import("../constants/ContainerScroll").then((m) => m.ContainerScroll), + { ssr: false }, +); +const IRISCompare = dynamic( + () => import("../Components/UI/IRISCompare").then((m) => m.IRISCompare), + { ssr: false }, +); +const SystemsSection = dynamic(() => import("../Components/UI/SystemSection"), { + ssr: false, +}); + +const NeonLoadingFallback = () => { + return ( +
- Read notifications, push files, and launch Android - applications directly from your desktop. -
- > - } - > -
+ - Built with a bleeding-edge modern stack -
-+ Read notifications, push files, and launch Android + applications directly from your desktop. +
+ > + } > - Built to Execute. -+ Built with a bleeding-edge modern stack +
++ Read notifications, push files, and launch Android + applications directly from your desktop. +
+ > + } + > +
- - Read notifications, push files, and launch Android - applications directly from your desktop. -
- > - } ++ Built with a bleeding-edge modern stack +
+
-
-
-
-
- - Built with a bleeding-edge modern stack -
-