Builders, not a player landing
This hub explains picker → configure → deploy. It is not the homepage clones publish. Factory Play is our first-level hop.
Megapot Network · developer factory
megapot.build is for builders, not players. Clone BuiltByGoat/network-site-template, bind MEGAPOT_PLAY_DESTINATION on the host, and ship a front door whose public copy sells play — not a builder ad.
/go → your MEGAPOT_PLAY_DESTINATION.Two-sided funnel
You visit this factory, clone the player shell, and bind MEGAPOT_PLAY_DESTINATION on the host. Players never see this page. They see your site, tap Play, and land on Megapot through Function-win /go.
This hub explains picker → configure → deploy. It is not the homepage clones publish. Factory Play is our first-level hop.
network-site-template is the player marketing shell. Its public copy should sell play — not advertise builders.
Put the destination in MEGAPOT_PLAY_DESTINATION. Public Play buttons point at /go; the Function issues the Location at request time.
01 · Picker
The cloneable is a player marketing shell, not a developer homepage. Clone BuiltByGoat/network-site-template on main. Preview: network-site-template.pages.dev. This factory repo is the explainer, not the site you ship.
git clone https://github.com/BuiltByGoat/network-site-template.git.main. Do not start from deprecated kits.Public copy sells play. Play hops through /go. Dashboard and latest results stay public look-ups — not a signup flow.
02 · Configure
Bind MEGAPOT_PLAY_DESTINATION on the host — the absolute URL /go redirects to. HTML outbound UTMs require SITE_HOSTNAME at build. The factory Pages project megapot-build must set SITE_HOSTNAME=megapot.build so dashboard / results / hub hrefs and /go Location match. Clones set their own deploy host.
| Name | Where it lives | Role |
|---|---|---|
MEGAPOT_PLAY_DESTINATION | Pages Function | Your clone's Play destination — the absolute URL /go redirects to. Bind it on Cloudflare Pages. Empty → public Megapot origin. |
SITE_HOSTNAME | Pages + build | Required for HTML UTMs. Factory: megapot.build. Alias: MEGAPOT_SITE_HOSTNAME. |
NEXT_PUBLIC_SITE_NAME | Public label | Cloneable title: Play on Megapot | {SITE_NAME}. This factory: Build on Megapot | {SITE_NAME}. |
MEGAPOT_REFERRER_ADDRESS | Server only | Reserved. Unused by the cloneable v1 shell. |
MEGAPOT_API_KEY | Server only | Reserved for server-side Data API reads. Do not prefix with NEXT_PUBLIC_. |
SITE_HOSTNAME stamps HTML UTMs so dashboard, results, and hub match /go Location. MEGAPOT_PLAY_DESTINATION is the Function's redirect target. Hostname UTMs are campaign params (builder / build-factory-v1).
03 · Deploy
Cloneable and factory both export out/. Play is functions/go.js + functions/go/index.js with _routes.json include: ["/*"]. Never a static /go 200. The factory's existing Pages project is megapot-build on a personal Cloudflare account. Custom-domain attachment is DomainManager only — this factory does not publish apex DNS steps.
pnpm build → out/Next.js static export. Factory build sets SITE_HOSTNAME=megapot.build so HTML stamps matching UTMs.
Git integration so functions/ ships. Bind SITE_HOSTNAME=megapot.build and MEGAPOT_PLAY_DESTINATION on the project.
Public markup links to /go. The Function reads MEGAPOT_PLAY_DESTINATION and returns the Location.
Doors
Play is intent. This factory's Play button is our /go. After you ship, players use yours. Dashboard and results stay public look-ups — not a signup flow.