Run with --diagnose --json to check your Qt version, import path, fonts, runtime and license. No license token is printed.
The Gallery evaluation app is available now. Paid SDK sales and downloads are coming soon. The installation examples above preview the SDK workflow.
Tested Windows configurations
Native window and example smoke checks cover the versions below. Qt 6.8 is a source minimum, not a promise of tested support for every Qt release. Gallery uses software rendering.
Two complete application examples
Step-by-step captures from the running Windows applications. Play, pause and inspect each state.
Workbench: mark a task done, save changes and see release progress update.Record Manager: preserve a failed save, retry, search and confirm before deleting.
See the components in context
RibbonPanelFormTableTreeTheme
TRY IT YOURSELF
The native Gallery
Browse examples, inspect properties and switch between light and dark themes in a Windows application. The Gallery is for evaluation; commercial SDK access is separate.
The --qml path must contain the Syidax folder. Python uses qml-pure. Run from the unzipped SDK, independently of the source repository.
License is inactive or frozen
Download your QML Core certificate and pass it with --license. Web Core, Chart and Grid certificates do not activate QML. Monthly use ends at expiry. Annual licenses retain only releases covered by their update period.
Qt or plugin mismatch
Check the Qt version and architecture used to build plugins. Do not mix Python Qt bindings. qml-pure removes the compiled plugin ABI dependency.
PDF or icons missing
PDF requires the optional QtQuick.Pdf module. Other Core components remain usable without it. For icon packs and resource paths, read SDK docs/ICON-PACKS.md.
Save failure or corrupt settings
Examples write only to their application-data folder. Check permissions and disk space. Invalid JSON is backed up before reset. A failed save preserves your draft.
The usual page frames, each built from the same SyLayout with a different set of sections: header + content, sider + content, header + sider + content + footer, and a dual-sider frame with a sider on both sides.
A SyLayout can be declared inside another layout's SyLayoutContent: anchored to fill the content, it frames its own header, sider and content independently
The section's own dimension: small · medium · large or pixels (header 48 · 56 · 64, sider 64 · 240 · 320, footer 40 · 48 · 64; ignored on the content)
string
"start"
Siders only: start (left) · end (right)
string
by type
header · sider · content · footer — set by the section type; "" also takes the section out of the frame (hiding it is enough)
real (read-only)
—
The resolved size in pixels
bool (read-only)
—
size is one of the preset names
Methods
Method
Description
Positions and sizes the sections now; the layout calls it itself on every size and section change
Signals
Item
Behavior / conditions
None — the layout and its sections only place items.
Behavior
Item
Behavior / conditions
The header is placed across the top at its extent tall, the footer across the bottom; the band between them (mainHeight) holds the start sider at the left (siderStartWidth wide), the end sider at the right (siderEndWidth), and the content in the remaining width (contentWidth). The resolved pixels are the section's extent.
The header is placed across the top at its extent tall, the footer across the bottom; the band between them (mainHeight) holds the start sider at the left (siderStartWidth wide), the end sider at the right (siderEndWidth), and the content in the remaining width (contentWidth).
The header is placed across the top at its extent tall, the footer across the bottom; the band between them (mainHeight) holds the start sider at the left (siderStartWidth wide), the end sider at the right (siderEndWidth), and the content in the remaining width (contentWidth).
The header is placed across the top at its extent tall, the footer across the bottom; the band between them (mainHeight) holds the start sider at the left (siderStartWidth wide), the end sider at the right (siderEndWidth), and the content in the remaining width (contentWidth).
The header is placed across the top at its extent tall, the footer across the bottom; the band between them (mainHeight) holds the start sider at the left (siderStartWidth wide), the end sider at the right (siderEndWidth), and the content in the remaining width (contentWidth).
The layout reads its direct children that carry a kind: the first header, the first footer, the first sider whose position is not "end", the first sider whose position is "end", and the first content. A hidden section (visible: false) takes no space either — its extent counts as 0 — and comes back when shown; setting kind to "" also drops a section but is no longer needed.
The layout reads its direct children that carry a kind: the first header, the first footer, the first sider whose position is not "end", the first sider whose position is "end", and the first content.
The layout reads its direct children that carry a kind: the first header, the first footer, the first sider whose position is not "end", the first sider whose position is "end", and the first content.
The layout reads its direct children that carry a kind: the first header, the first footer, the first sider whose position is not "end", the first sider whose position is "end", and the first content.
The layout reads its direct children that carry a kind: the first header, the first footer, the first sider whose position is not "end", the first sider whose position is "end", and the first content.
A hidden section (visible: false) takes no space either — its extent counts as 0 — and comes back when shown; setting kind to "" also drops a section but is no longer needed.
A section's own dimension is size: a preset name — header small 48 · medium 56 · large 64, sider small 64 · medium 240 · large 320, footer small 40 · medium 48 · large 64 — or a number of pixels (a numeric string works too). The content's size is ignored: it takes what is left.
The section is an item sized by the layout; what is declared inside it fills it with anchors.fill: parent, or positions itself from the section's top-left.
A SyLayout inside a SyLayoutContent frames its own sections independently; each layout only reads its own direct children.
Keyboard
Item
Behavior / conditions
SyGlobalHeader for the header band, SyNav for a sider, SyPanelGroup + SyPanel for two resizable panes, SyFlex for arranging items inside a section.