Skip to content
codexa

Landing pages · React

Webinar registration

Registration page for a free live webinar with session details, agenda, speakers, past attendee quotes and a sign-up form.

Webinar registration starter, as built from its own files
Starter screenshot captured from this template's own build at 1440×900. It shows the template as it ships, not output generated from a prompt.

What you get

A registration page for a one-hour live webinar: date and time up front, what attendees will learn, a minute-by-minute agenda, the speakers, quotes from past sessions, an FAQ and the registration form. All content lives in src/site.ts.

Files

Exactly what is copied into a new project: 13 files, nothing generated.

Raw data: GET /api/v1/templates/landing-webinar

src/site.ts
src/site.ts
import type { Site } from "./types"; /** Everything this site shows. Edit freely. */export const site: Site = {  "brand": "Marlow & Finch",  "nav": [    {      "label": "Agenda",      "href": "#agenda"    },    {      "label": "Speakers",      "href": "#speakers"    },    {      "label": "FAQ",      "href": "#faq"    }  ],  "navCta": {    "label": "Save my seat",    "href": "#register"  },  "sections": [    {      "kind": "hero",      "variant": "split",      "eyebrow": "Free live webinar · Thursday 19 November 2026",      "title": "Close your books in five working days, not fifteen.",      "text": "A practical hour for finance leads at companies with 20 to 200 people. We'll walk through the month-end checklist our clients use, the three reconciliations worth automating first, and the ones that aren't.",      "primary": {        "label": "Register free",        "href": "#register"      },      "secondary": {        "label": "See the agenda",        "href": "#agenda"      },      "visual": {        "type": "mock",        "title": "Session details",        "rows": [          {            "label": "Date",            "value": "Thu 19 Nov 2026"          },          {            "label": "Time",            "value": "11:00 – 12:00 ET"          },          {            "label": "Format",            "value": "Live on Zoom"          },          {            "label": "Replay",            "value": "Sent within 24 h"          },          {            "label": "Cost",            "value": "Free"          }        ],        "footer": "500 seats. Everyone who registers gets the checklist."      }    },    {      "kind": "features",      "id": "learn",      "eyebrow": "What you'll leave with",      "title": "Four things you can use the following Monday",      "columns": 2,      "items": [        {          "title": "A 5-day close calendar",          "text": "The day-by-day schedule, with owners, that we roll out with new clients. Editable spreadsheet included.",          "icon": "calendar"        },        {          "title": "Reconciliations to automate first",          "text": "Bank, card and payroll clearing: how to automate them and which checks to keep manual.",          "icon": "bolt"        },        {          "title": "Accrual shortcuts that auditors accept",          "text": "Where estimates are fine, where they aren't, and how to document the difference.",          "icon": "shield"        },        {          "title": "A board pack in two hours",          "text": "The six numbers boards actually read, and a template that pulls them in.",          "icon": "chart"        }      ]    },    {      "kind": "timeline",      "id": "agenda",      "eyebrow": "Agenda",      "title": "The hour, minute by minute",      "items": [        {          "period": "11:00 – 11:05",          "title": "Welcome and quick poll",          "text": "How long your close takes today, so we can pitch the rest at the right level."        },        {          "period": "11:05 – 11:25",          "title": "The five-day calendar",          "text": "Walking through each day, with the hand-offs that usually cause the delays."        },        {          "period": "11:25 – 11:40",          "title": "Automation, honestly",          "text": "What we automate for clients, what we deliberately keep manual, and why."        },        {          "period": "11:40 – 12:00",          "title": "Live Q&A",          "text": "Bring your messiest month-end. We'll take questions in the order they're upvoted."        }      ]    },    {      "kind": "team",      "id": "speakers",      "eyebrow": "Speakers",      "title": "Who you'll hear from",      "items": [        {          "name": "Dana Whitlock",          "role": "Partner, Marlow & Finch",          "tone": "#1e3a5f"        },        {          "name": "Ravi Menon",          "role": "Head of close automation",          "tone": "#334155"        },        {          "name": "Claire Osei",          "role": "Controller at a 140-person retailer",          "tone": "#57534e"        },        {          "name": "Tom Brennan",          "role": "Moderator",          "tone": "#3f3f46"        }      ]    },    {      "kind": "quotes",      "eyebrow": "Past sessions",      "title": "From people who came last time",      "items": [        {          "quote": "We took the calendar as-is and went from twelve days to seven in two months.",          "name": "Lena F.",          "role": "Finance lead, software company"        },        {          "quote": "Useful because they said what not to automate. Nobody else does that.",          "name": "Owen P.",          "role": "Controller"        },        {          "quote": "An hour well spent. The Q&A alone answered two questions our auditors raised.",          "name": "Gemma T.",          "role": "Head of finance, charity"        }      ]    },    {      "kind": "faq",      "id": "faq",      "eyebrow": "FAQ",      "title": "Good to know",      "items": [        {          "q": "I can't make the live time. Should I still register?",          "a": "Yes. Everyone who registers gets the replay and the checklist by email within 24 hours."        },        {          "q": "Is this a sales pitch?",          "a": "No. There's one slide at the end about how we work with clients. Everything else is usable without us."        },        {          "q": "Does it count towards CPD?",          "a": "We issue a one-hour attendance certificate to live attendees. Check with your professional body whether it qualifies."        }      ]    },    {      "kind": "contact",      "id": "register",      "eyebrow": "Register",      "title": "Save your seat",      "text": "Free. You'll get a calendar invite straight away and a reminder an hour before we start.",      "fields": [        "name",        "email",        "company"      ],      "button": "Register free"    }  ],  "footer": {    "text": "Outsourced finance and month-end support for growing companies.",    "columns": [      {        "title": "Webinar",        "links": [          "Thu 19 Nov 2026",          "11:00 – 12:00 ET",          "Online, free"        ]      },      {        "title": "Firm",        "links": [          "Services",          "Team",          "Contact"        ]      },      {        "title": "Legal",        "links": [          "Privacy",          "Terms"        ]      }    ],    "legal": "© Marlow & Finch. Sample content: replace it in src/site.ts."  }};

Remix

Remix this template

Describe what to change and the agent starts from Webinar registration's files. The box is already started for you: finish “Start from Webinar registration and …”

Agent ready

Creates a free account first; your idea is carried over.

Dependencies

Documented from the template's package.json. The runtime has a prebuilt dependency set for Vite + React + TypeScript, so installs are fast.

  • react^19.1.0
  • react-dom^19.1.0
  • vite^6.3.0
  • @vitejs/plugin-react^4.4.0
  • tailwindcss^4.1.0
  • @tailwindcss/vite^4.1.0
  • typescript^5.8.0

How it runs

Framework
Vite + React + TypeScript
Dev command
npm run dev
Build command
npm run build
Output directory
dist
Port
5173
Entry route
/

Projects run in an isolated sandbox with a live preview. Read the projects documentation for settings, snapshots and deployment.

All templates

Build on Webinar registration

Create a free account, start from this template, and ask the AI agent to turn it into your app.