TL;DR
The studio’s build tab has two layouts. Stacked is the default. Three-pane is opt-in and wide-screen only. Both can now do the same things; three-pane stays opt-in because nobody has verified it in a browser.Stacked
A block rail plus one column of accordion editors: click a block’s header to expand it, edit in place, drag to reorder. This is the layout everything else in the studio is built around, and it is the only one at viewports below1280px.
Three-pane
Four columns atxl and above: the block rail, an outline, the canvas, and
properties.
Selection lives in one place. The outline and the canvas both write to the
studio’s existing
activeSectionId / activeQuestionIdsBySection state, and
the properties pane reads it — so a block is never selected in two places at
once, and the realtime “which block are they on” presence already tracks it.
Two implementation choices worth keeping:
- The canvas renders the real
QuestionBlockfrom the runtime, not a studio mock, so it cannot drift from the shipped product the way a parallel preview implementation would. Every block is disabled — it is a canvas for selecting, not answering. - The properties pane renders
QuestionEditorin itspanelvariant rather than a second editor. A field added to the accordion shows up here with no extra work; the alternative was two editors that drift.
Why it is still opt-in
Three-pane now covers what stacked covers:- Reordering — drag blocks within a section from the outline, or use the
move controls in the properties header. A
DndContextper section means a drag cannot cross a section boundary; moving a block between sections would rewrite two arrays and re-key the branching rules that reference it, so that stays stacked-only until it is designed properly. - Duplicating and deleting a block — in the properties pane header. They are there rather than on each outline row because the outline is 240px wide and a control per row would crowd out the labels. Duplicating selects the copy, so the author edits what they just made rather than the original.
- Section fields — selecting a section shows its title, description and
cover in the properties pane, rendered by the same
SectionFieldscomponent the stacked accordion uses. - Form details and logic rules — the same elements the stacked layout builds, hoisted and rendered above and below the canvas.
tuturuuu:form-studio:build-layout, and a viewport below 1280px always falls
back to stacked — three panes in 600px is three unusable columns.
Changing the default
Flipping the default is a one-line change inuseStudioBuildLayout. The
remaining blocker is a person looking at it, not missing functionality.
Until that happens, treat three-pane as a preview and keep new studio features
working in stacked first.