Handbook · Checking your work

Checking your work

Where in the UI. Preview tab; JSON tab markers; Scripts tab capability list; Author chat validate tool.

A template can look fine on the layout and still fail in the app. Use three layers of checking, then Preview.

Three layers

LayerQuestionWhere
StructuralIs the JSON a well-shaped template?JSON tab (and export)
SemanticDo ids line up? Are bindings legal? Blockly plugs connected?JSON tab + Scripts
PolicyDoes this profile allow this component, event, or host method?JSON tab profile picker

Editor Preview uses a relatively permissive profile. Treat production-alpha as the bar for catalog publish. Details: Validation reference.

Sandbox

Generated script JS runs in js-interpreter. There is no window, no fetch, no DOM. Host calls are explicit (showAlert, setItemData, …) and each requires a capability (dialog.open, write.item, read.relatives, …). If a block is greyed or a policy error names a method, you asked for a power the profile forbids.

Preview

Preview is a mock item plus the same interpreter. It will not match every host quirk (camera, filesystem, notifications). Use it to see bindings, expressions, and simple scripts. Device-only APIs need the app.