Skip to content

Building Your First Form

This guide walks you through building a simple satisfaction survey from scratch in under five minutes.

Head to the home page and scroll down to the Live builder section, or click Start building now in the hero. The builder auto-saves everything to your browser as you work — no account needed.

Click + Multiple choice in the “Add another question” panel at the bottom of the builder.

A new question node appears with default settings. Click into the node to expand it into edit mode:

  • Question ID — a unique identifier used in the JSON schema (e.g. question_id_1). You can rename this to something meaningful like overall_satisfaction.
  • Title — the question text respondents will see.
  • Options — add as many choices as you need. Each option gets its own label and an optional score value.

Click + Field to add an open-ended text question below. Set its title to something like “Any other comments?”.

Your builder now has two nodes stacked in order.

Click Preview form in the toolbar. The builder switches to the form filler view — this is exactly what a respondent would see.

Step through the form to test it. When you’re done, click Back to builder to return.

The builder serialises your form to JSON automatically. You can access the schema via the flowform.node-page.schema key in your browser’s localStorage:

JSON.parse(localStorage.getItem('flowform.node-page.schema'))

The output is a SurveyNode[] array — one entry per question or rule, each with a sort_key, type, and content block.

[
{
"type": "question",
"sort_key": 0,
"content": {
"family": "choice",
"id": "overall_satisfaction",
"title": "How satisfied are you?",
"options": [
{ "label": "Very satisfied", "score": 5 },
{ "label": "Satisfied", "score": 4 },
{ "label": "Neutral", "score": 3 }
]
}
}
]