import { Link, useParams } from "react-router-dom"; import { Badge } from "@/components/ui/badge"; import { Button } from "@/components/ui/button"; import { Card, CardContent } from "@/components/ui/card"; import { ArrowLeft, Twitter, Linkedin, Github, Clock, MapPin } from "lucide-react"; import Header from "@/components/Header"; import Footer from "@/components/Footer"; const speakerData: Record = { "speaker-1": { initials: "SK", name: "Sarah Kim", role: "VP Engineering", company: "Vercel", bio: "Sarah has spent over a decade building web infrastructure at scale. As VP of Engineering at Vercel, she leads the team behind Next.js and champions developer experience. She is a frequent keynote speaker at conferences worldwide and a passionate advocate for open-source software.", expertise: ["React", "Performance", "Server Components", "Next.js"], gradient: "from-indigo-500 to-cyan-500", sessions: [ { day: "Day 1", time: "09:00", title: "Opening Keynote: The Future of Web", room: "Main Hall" }, { day: "Day 3", time: "11:30", title: "Micro-Frontends: Lessons Learned", room: "Room B" }, ], }, "speaker-2": { initials: "AM", name: "Alex Morgan", role: "CTO", company: "Supabase", bio: "Alex co-founded Supabase to make backend development accessible to everyone. With deep expertise in PostgreSQL and real-time systems, they have helped thousands of developers ship faster. Previously a senior engineer at Stripe, Alex brings a unique blend of infrastructure and product thinking.", expertise: ["TypeScript", "APIs", "Databases", "Open Source"], gradient: "from-purple-500 to-pink-500", sessions: [ { day: "Day 1", time: "10:00", title: "React Server Components in Production", room: "Room A" }, { day: "Day 2", time: "14:00", title: "Full-Stack TypeScript Patterns", room: "Room B" }, ], }, }; export default function SpeakerDetailPage() { const { id } = useParams(); const speaker = speakerData[id || ""] || speakerData["speaker-1"]; return (
Back to Speakers
{speaker.initials}

{speaker.name}

{speaker.role}, {speaker.company}

{[Twitter, Linkedin, Github].map((Icon, i) => ( ))}

{speaker.bio}

{speaker.expertise.map((tag) => ( {tag} ))}
{/* Sessions */}

Sessions

{speaker.sessions.map((s, i) => ( {s.day}
{s.time}
{s.title}
{s.room}
))}
); }