Skip to content

Add the Inference Day registration page - #40

Merged
bassam merged 3 commits into
modelplaneai:mainfrom
charliehinojosa:inference-day
Oct 20, 2026
Merged

bassam merged 3 commits into
modelplaneai:mainfrom
charliehinojosa:inference-day

Conversation

@charliehinojosa

Copy link
Copy Markdown
Contributor

What and why

Adds /inference-day, a standalone registration page for the free, live virtual event on November 5, 2026, built from the design handoff to match the Figma frame.

The page reuses the site's Seo, Footer, global .btn-primary/.btn-ghost, and the already-loaded Outfit/Inter/DM Mono fonts. Every new style rule is scoped under .id-page, so nothing leaks into the rest of the site, and no homepage or global styles were changed.

What's included

  • pages/inference-day.tsx plus scoped components in src/components/inference-day/ (EventNav, EventHero, RegisterSection, RegistrationForm, Agenda, Speakers, ClosingCta, EventLockup, EventActions).
  • Styles in src/styles/inference-day.css (imported in _app.tsx, as the pages router requires); data in src/data/inference-day/; art + 11 headshots under public/inference-day/.
  • Event JSON-LD, a downloadable .ics (8 a.m. PST / 5 p.m. CET), the shared <Footer /> with the hosted/sponsored lockup above it, and the route added to the sitemap.
  • Responsive from 360→1440 with no horizontal scroll; speakers render in JSON order (Itay Neeman first, Annie Talvasto last).

The registration backend isn't final, so the form keeps its endpoint in one constant (NEXT_PUBLIC_REGISTRATION_ENDPOINT) and handles idle/submitting/success/error — see the TODO(upbound-form) in RegistrationForm.tsx.

Open items (stubbed, to confirm before launch)

  • Registration backend: StreamYard embed vs. an Upbound marketing form.
  • Privacy-policy link target (currently Upbound's — confirm with Annie).
  • OG image (1200×630) — falls back to the generic card for now.
  • SVG exports of the contrail + lockup art — PNG fallbacks are committed.
  • Optional announcement bars (§4 of the handoff) — not in this PR.

Checklist

  • Ran npm run build and npm run validate-posts locally — both pass; /inference-day prerenders as static.
  • Signed off my commit with git commit -s (DCO).
  • npm run lint — not run: this repo's "lint": "next lint" script is broken repo-wide (Next 16 removed next lint, and there's no ESLint flat-config). Pre-existing and unrelated to this change; worth a separate fix.

Generated by Claude Code

Build /inference-day, a standalone registration page for the November 5,
2026 virtual event, from the design handoff. The page reuses the site's
Seo, Footer, global button styles and already-loaded fonts; every new rule
is scoped under .id-page so nothing leaks into the rest of the site.

Sections: event nav, hero, about + registration form, agenda, speakers
(Kelsey Hightower and Viktor Farcic featured, nine panelists in JSON order),
and a closing CTA, plus Event JSON-LD, a downloadable .ics, and the route in
the sitemap. The registration backend is not final, so the form keeps its
endpoint in one constant (NEXT_PUBLIC_REGISTRATION_ENDPOINT) and handles the
idle / submitting / success / error states; see the TODO in RegistrationForm.

Open items are stubbed and listed for follow-up: StreamYard vs Upbound form
backend, the privacy-policy link target, the OG image, SVG exports of the
contrail and lockup art (PNG fallbacks committed for now), and the optional
announcement bars.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016QU1xKJitT9UNpCfjXjDxt
Signed-off-by: Charlie Hinojosa <charlie@sightbox.me>
Signed-off-by: Charlie Hinojosa <charlie@sightbox.me>
Signed-off-by: Charlie Hinojosa <charlie@sightbox.me>
@bassam
bassam merged commit 439f239 into modelplaneai:main Oct 20, 2026
2 checks passed
@bassam bassam mentioned this pull request Oct 20, 2026
3 tasks done
charliehinojosa added a commit to charliehinojosa/website that referenced this pull request Oct 20, 2026
Follow-up to the merged Inference Day page (modelplaneai#40), rebased onto the lint fix (modelplaneai#41):

- Make the hero and closing-CTA contrail full-bleed, sized in vw so the wave
  spans the section at every width (the fan reaches the lower-left, the lines run
  off the top-right) instead of being cut off; soften it on phones for legibility.
- Add a dismissible homepage announcement bar linking to /inference-day. It is
  rendered client-only (its visibility depends on localStorage and the date), so
  there is no effect-driven state and no hydration mismatch; it hides itself once
  the event has passed.
- Add an Inference Day link to the main nav (next to Slack, cyan accent) using
  next/link, and give the landing page a two-tier header: the main site Nav plus
  a slim event sub-nav for the on-page jump links. This replaces the standalone
  EventNav.

npm run lint, build and validate-posts all pass.

Signed-off-by: Charlie Hinojosa <charlie@sightbox.me>

This branch was successfully deployed

1 active deployment
Preview — 784913c2 Deployed Oct 20, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants