Working example. Fork this for any new intake form.
This page is a live, working form. Submitting it will create a real Notion entry tagged form_type: "template-test" + post to #flinthaus-forms.
Use it to verify the pipeline works AND as the starter for new forms. To customize: change the JS constants FORM_TYPE + SUBMITTER at the top of the script, then change the questions in the markup. Everything else (Worker URL, payload shape, fallback handling) stays as-is.
Quickstart for new forms (5 steps):
Copy this entire HTML file
Change FORM_TYPE in the JS (e.g., "client-feedback")
Change SUBMITTER default if needed (or have JS detect it)
Replace the questions in the markup with your own (radio / checkbox / textarea)
Update Q_RADIO, Q_CHECK, NOTES dicts to match your input IDs
Then deploy with wrangler pages deploy <dir> after creating the project. Add the new form_type value to the Notion 'Form Intake' DB select options (Notion UI, ~5 sec).
Q1
Radio button question (single choice)
Pick one — radio buttons share a name attribute.
Q2
Checkbox question (multi-select)
Pick any number — checkboxes share a name attribute.