- Add required email field to registration form (was missing entirely,
causing "N/A" emails in booking notifications)
- Pass email through full chain: form → API → Google Sheet → Mollie
metadata → webhook (with Mollie billingAddress as fallback)
- BCC contact@cryptocommonsgather.ing on all payment confirmation
emails so team is notified of every successful registration
- Replace OG image with alpine mountain card including event name,
dates, and URL for better Twitter/social sharing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Use absolute URLs for OG/Twitter images (required by LinkedIn, WhatsApp)
- Add image type and descriptive alt text for OG image
- Add robots.txt allowing all crawlers
- Add dynamic sitemap.xml with all public pages
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace external iframe with react-pageflip flipbook component using
pre-rendered slide images (1.3MB total vs 17MB PDF). Add 3-photo strip
between stats and tiers sections. Swap CTA background image. Update
generate_sponsor_docs.py to export slide JPGs and copy PDF to public/.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add og-image.jpg (1200x630) for link previews
- Add metadataBase, openGraph, and twitter metadata to layout.tsx
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Align footer with commons-oriented ethos and clarify licensing.
#VERCEL_SKIP
Co-authored-by: Jeff Emmett <46964190+Jeff-Emmett@users.noreply.github.com>
Switch to white, red, and neutral gray for consistent contrast.
#VERCEL_SKIP
Co-authored-by: Jeff Emmett <46964190+Jeff-Emmett@users.noreply.github.com>