root = Card([header, countdownCard, agendaSection, speakersSection, ticketsSection, registrationForm])
header = CardHeader("TechForward 2026", "October 15–17, 2026 · Moscone Center, San Francisco")
countdownCard = SnippetCardBlock([countdownItem], "grid", true)
countdownItem = SnippetCardItem("days-left", countdownLhs, countdownRhs)
countdownLhs = IconText(countdownIcon, "info", "l", "Days Until Event", "Countdown to kickoff", false, "horizontal")
countdownIcon = Icon("calendar", "time")
countdownRhs = BoldText("number", "45", "Days Remaining", "metric", "xl")
agendaSection = SectionBlock([agendaDay1, agendaDay2, agendaDay3], false)
agendaDay1 = SectionItem("day1", "Day 1 — October 15", [agendaTable1])
agendaTable1 = Table([colTime1, colSession1, colSpeaker1, colLocation1])
colTime1 = Col("Time", ["09:00–10:00", "10:00–10:30", "10:30–11:30", "11:30–12:30", "12:30–13:30", "13:30–14:30", "14:30–15:30", "15:30–16:00", "16:00–17:00"], "string")
colSession1 = Col("Session", ["Registration & Breakfast", "Opening Keynote", "AI in Production", "Building Scalable Systems", "Lunch Break", "Workshop: LLM Ops", "Panel: Future of DevTools", "Coffee Break", "Lightning Talks"], "string")
colSpeaker1 = Col("Speaker", ["—", "Dr. Sarah Chen", "Marcus Johnson", "Priya Patel", "—", "Alex Rivera", "Panel: Chen, Johnson, Patel", "—", "Various"], "string")
colLocation1 = Col("Location", ["Grand Ballroom Foyer", "Grand Ballroom A", "Grand Ballroom A", "Room 201", "Grand Ballroom Foyer", "Room 305", "Grand Ballroom A", "Grand Ballroom Foyer", "Room 201"], "string")
agendaDay2 = SectionItem("day2", "Day 2 — October 16", [agendaTable2])
agendaTable2 = Table([colTime2, colSession2, colSpeaker2, colLocation2])
colTime2 = Col("Time", ["09:00–10:00", "10:00–11:00", "11:00–11:30", "11:30–12:30", "12:30–13:30", "13:30–14:30", "14:30–15:30", "15:30–16:00", "16:00–17:30"], "string")
colSession2 = Col("Session", ["Breakfast & Networking", "Keynote: Quantum Computing", "Coffee Break", "Security in the AI Era", "Lunch Break", "Workshop: Edge Computing", "Case Studies: Scale Stories", "Coffee Break", "Closing Keynote & Awards"], "string")
colSpeaker2 = Col("Speaker", ["—", "Dr. James Park", "—", "Lisa Wong", "—", "David Kim", "Panel: Park, Wong, Kim", "—", "Dr. Sarah Chen"], "string")
colLocation2 = Col("Location", ["Grand Ballroom Foyer", "Grand Ballroom A", "Grand Ballroom Foyer", "Grand Ballroom A", "Grand Ballroom Foyer", "Room 305", "Grand Ballroom A", "Grand Ballroom Foyer", "Grand Ballroom A"], "string")
agendaDay3 = SectionItem("day3", "Day 3 — October 17", [agendaTable3])
agendaTable3 = Table([colTime3, colSession3, colSpeaker3, colLocation3])
colTime3 = Col("Time", ["09:00–10:00", "10:00–11:00", "11:00–12:00", "12:00–13:00", "13:00–14:00"], "string")
colSession3 = Col("Session", ["Breakfast & Hackathon Kickoff", "Hackathon: Build with AI", "Hackathon Continues", "Lunch & Demos", "Winners Announced & Farewell"], "string")
colSpeaker3 = Col("Speaker", ["—", "Mentors Available", "Mentors Available", "—", "All Speakers"], "string")
colLocation3 = Col("Location", ["Innovation Lab", "Innovation Lab", "Innovation Lab", "Innovation Lab", "Grand Ballroom A"], "string")
speakersSection = SectionBlock([speakersList], false)
speakersList = SectionItem("speakers", "Featured Speakers", [speakersBlock])
speakersBlock = ListBlock([sp1, sp2, sp3, sp4, sp5, sp6], "number")
sp1 = ListItem("Dr. Sarah Chen", "Chief AI Officer, Nexus Labs — Opening Keynote & Closing Remarks", null, null, { type: "continue_conversation", context: "Tell me more about Dr. Sarah Chen's background and talks" })
sp2 = ListItem("Marcus Johnson", "VP Engineering, CloudScale Inc. — Building Scalable Systems", null, null, { type: "continue_conversation", context: "Tell me more about Marcus Johnson's session on scalable systems" })
sp3 = ListItem("Priya Patel", "Staff Engineer, DataFlow — AI in Production", null, null, { type: "continue_conversation", context: "Tell me more about Priya Patel's AI in Production talk" })
sp4 = ListItem("Dr. James Park", "Quantum Research Lead, IBM Quantum — Quantum Computing Keynote", null, null, { type: "continue_conversation", context: "Tell me more about Dr. James Park's quantum computing keynote" })
sp5 = ListItem("Lisa Wong", "Security Architect, SecureNet — Security in the AI Era", null, null, { type: "continue_conversation", context: "Tell me more about Lisa Wong's security session" })
sp6 = ListItem("David Kim", "Principal Engineer, EdgeFirst — Edge Computing Workshop", null, null, { type: "continue_conversation", context: "Tell me more about David Kim's edge computing workshop" })
ticketsSection = SectionBlock([ticketsCards], false)
ticketsCards = SectionItem("tickets", "Ticket Tiers", [ticketsBlock])
ticketsBlock = CompositeCardBlock([tier1, tier2, tier3], "grid", true)
tier1 = CompositeCardItem("early-bird", tier1Header, [tier1Price, tier1Features], { price: tier1PriceBold, button: tier1Btn })
tier1Header = IconText(tier1Icon, "neutral", "m", "Early Bird", "Limited to first 200 registrants", false, "horizontal")
tier1Icon = Icon("ticket", "shapes")
tier1Price = MetricIndicatorInline("$299", "Save $200", { direction: "down", value: 40 })
tier1Features = TagBlock(["Full 3-day access", "All keynotes & sessions", "Workshop access", "Lunch & coffee breaks", "Swag bag", "Networking events"])
tier1PriceBold = BoldText("number", "$299", "Regular $499", "metric")
tier1Btn = Button("Register Early Bird", { type: "continue_conversation", context: "I want to register for the Early Bird ticket at $299" }, "primary")
tier2 = CompositeCardItem("standard", tier2Header, [tier2Price, tier2Features], { price: tier2PriceBold, button: tier2Btn })
tier2Header = IconText(tier2Icon, "neutral", "m", "Standard", "Full conference access", false, "horizontal")
tier2Icon = Icon("ticket", "shapes")
tier2Price = MetricIndicatorInline("$499", "Standard pricing", { direction: "up", value: 0 })
tier2Features = TagBlock(["Full 3-day access", "All keynotes & sessions", "Workshop access", "Lunch & coffee breaks", "Swag bag", "Networking events"])
tier2PriceBold = BoldText("number", "$499", "Standard price", "metric")
tier2Btn = Button("Register Standard", { type: "continue_conversation", context: "I want to register for the Standard ticket at $499" }, "secondary")
tier3 = CompositeCardItem("vip", tier3Header, [tier3Price, tier3Features], { price: tier3PriceBold, button: tier3Btn })
tier3Header = IconText(tier3Icon, "success", "m", "VIP", "Premium experience", false, "horizontal")
tier3Icon = Icon("star", "shapes")
tier3Price = MetricIndicatorInline("$999", "Includes exclusive perks", { direction: "up", value: 0 })
tier3Features = TagBlock(["Everything in Standard", "VIP lounge access", "Speaker dinner invite", "Priority seating", "1-on-1 speaker session", "Premium swag package"])
tier3PriceBold = BoldText("number", "$999", "VIP pricing", "metric")
tier3Btn = Button("Register VIP", { type: "continue_conversation", context: "I want to register for the VIP ticket at $999" }, "primary")
registrationForm = Form("conference-registration", regButtons, [fcName, fcEmail, fcTicket, fcDietary, fcConsent])
regButtons = Buttons([btnSubmit, btnCancel], "row")
btnSubmit = Button("Register Now", { type: "continue_conversation", context: "Submit my conference registration with the provided details" }, "primary")
btnCancel = Button("Cancel", { type: "continue_conversation", context: "Cancel registration" }, "tertiary")
fcName = FormControl("Full Name", nameInput, "As it should appear on your badge")
nameInput = Input("full-name", "Enter your full name", "text", { required: true, minLength: 2, maxLength: 100 })
fcEmail = FormControl("Email Address", emailInput, "We'll send your confirmation and tickets here")
emailInput = Input("email", "you@example.com", "email", { required: true, email: true })
fcTicket = FormControl("Ticket Tier", ticketSelect, "Select your preferred tier")
ticketSelect = Select("ticket-tier", [ts1, ts2, ts3], "Choose a ticket", { required: true })
ts1 = SelectItem("early-bird", "Early Bird — $299 (Limited)")
ts2 = SelectItem("standard", "Standard — $499")
ts3 = SelectItem("vip", "VIP — $999")
fcDietary = FormControl("Dietary Requirements", dietaryChips, "Select all that apply (optional)")
dietaryChips = Chips("dietary", "multiple", [dc1, dc2, dc3, dc4, dc5], {})
dc1 = ChipItem("none", "None", dc1icon)
dc1icon = Icon("check-circle", "shapes")
dc2 = ChipItem("vegetarian", "Vegetarian", dc2icon)
dc2icon = Icon("leaf", "nature")
dc3 = ChipItem("vegan", "Vegan", dc3icon)
dc3icon = Icon("sprout", "nature")
dc4 = ChipItem("gluten-free", "Gluten-Free", dc4icon)
dc4icon = Icon("wheat-off", "nature")
dc5 = ChipItem("halal", "Halal", dc5icon)
dc5icon = Icon("certificate", "shapes")
fcConsent = FormControl("Updates & Marketing", consentSwitch, "Receive conference updates and future event announcements")
consentSwitch = SwitchGroup("marketing-consent", [sw1], "card")
sw1 = SwitchItem("I agree to receive email updates about TechForward and future events", "Marketing consent", "marketing-opt-in", true)