From e1e034bc3a6f8a2f963b76bbd0b5c67a2f7ccfac Mon Sep 17 00:00:00 2001 From: jyswee Date: Thu, 23 Jul 2026 22:10:57 +0000 Subject: [PATCH] Seed: event template (15 files) --- src/components/Header.tsx | 58 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 src/components/Header.tsx diff --git a/src/components/Header.tsx b/src/components/Header.tsx new file mode 100644 index 0000000..95623cd --- /dev/null +++ b/src/components/Header.tsx @@ -0,0 +1,58 @@ +import { useState, useEffect } from "react"; +import { Link } from "react-router-dom"; +import { Button } from "@/components/ui/button"; +import { Sheet, SheetContent, SheetTrigger } from "@/components/ui/sheet"; +import { Menu, Ticket } from "lucide-react"; +import { ThemeToggle } from "@/components/ThemeToggle"; + +export default function Header() { + const [open, setOpen] = useState(false); + const [scrolled, setScrolled] = useState(false); + + useEffect(() => { + const fn = () => setScrolled(window.scrollY > 20); + window.addEventListener("scroll", fn); + return () => window.removeEventListener("scroll", fn); + }, []); + + const links = [ + { label: "Schedule", to: "/schedule" }, + { label: "Speakers", to: "/speakers" }, + { label: "Venue", to: "/venue" }, + ]; + + return ( +
+
+ DevForge 2026 + +
+ + +
+ + + + + + + + +
+
+ ); +} \ No newline at end of file