Home/Event Planning/Community Sign-Up Page SOP

The Short Answer

QuestionAnswer
Are the pages in this repo?There is no page per community. There is one page, ep-trip-signup.html, which renders whichever community the hostname names.
Why in platform-mockup?Because everything that fills it is already here: the community record, the trip, the itinerary, the photos, the pricing grid, the Stripe endpoints and the admin screens that edit them. A separate repo would need a copy of all of it.
How does the domain reach it?Both hostnames are custom domains on the same Cloudflare Pages project (platform-mockup). They are not separate sites and not separate deploys.
What turns the root into the form?functions/index.js rewrites the root of a known hostname to /ep-trip-signup. A rewrite, not a redirect, so the clean address stays in the bar.
Does a new community need new code?Only two lines, both hostname maps (tab 2). Content, branding, pricing and photos are all data you type in the admin.

The Request Path, End To End

#StepWhat Happens
1Resident opens sunlakes.yourpremiervacation.comDNS points the hostname at Cloudflare Pages.
2Cloudflare serves the platform-mockup projectThe hostname is attached to this project as a custom domain.
3functions/index.js matches the hostHOST_TO_GROUP recognises it and fetches /ep-trip-signup in place.
4ep-trip-signup.html loadsNo query string arrived, so its own HOST_GROUP map derives the slug sun-lakes from the hostname.
5Page calls /api/ep-trip-signup-init?group=sun-lakesReturns the community branding plus every active, non-draft trip whose signup_group is that slug.
6Template rendersOne trip renders Template 1, two or more render Template 2.
7Resident paysep-trip-signup-intent charges the deposit, ep-trip-signup-confirm schedules the balance and mirrors to Airtable Purple.

What Is Live Today

CommunitySlugPublic DomainLive
Quail Creekquail-creekquailcreek.yourpremiervacation.comLive
Sun Lakessun-lakessunlakes.yourpremiervacation.comLive