Image catalog
The images the New Space wizard offers: groups, sizes, the image field and its suggestions.
The images the New Space wizard offers: groups, sizes, the image field and its suggestions.
These APIs are part of the Cua Spaces app export for building Spaces UIs. They are source-available under FSL-1.1-MIT and ship for Swift only (import CuaSpacesFFI); the Rust tab shows the cua-spaces-ffi crate they come from. The open source SDK packages for Python, TypeScript and Kotlin do not include them.
The catalog behind the New Space image field: each AppSandboxImage with its group, distro, tier and download sizes, and the suggestions the field shows as you type.
AppSandboxImage record#| Field | Type | Default | Description |
|---|---|---|---|
image_ref / imageRef | String | OCI ref. | |
group | String | Group id. | |
os | AppSpaceOs | OS. | |
name | String | Display name. | |
variant | AppSpaceKind | Container or VM. | |
summary | String | One line. | |
spacesd | bool | Runs cua-spacesd (streams). | |
local | Option<AppLocalEngine> | Local engine. | |
cloud | Option<AppCloudEngine> | Cloud engine. | |
tier | Option<AppImageTier> | slim, full or xcode (canonical images only). | |
published | bool | Offered in pickers. | |
distro | Option<AppImageDistro> | The guest's distribution. | |
arch | Vec<String> | Platforms it is built for (amd64, arm64); empty when unknown. | |
sizes | Option<AppImageSizes> | How big it is per platform, when measured. |
AppImageGroup record#Returned by app_wizard_image_suggestions.
| Field | Type | Default | Description |
|---|---|---|---|
id | String | Group id. | |
label | String | Title. | |
images | Vec<AppSandboxImage> | Published images. |
AppImageSizes record#| Field | Type | Default | Description |
|---|---|---|---|
digest | String | The digest they were measured at. | |
platforms | Vec<AppPlatformSize> | One row per platform. |
AppPlatformSize record#| Field | Type | Default | Description |
|---|---|---|---|
arch | String | amd64 or arm64. | |
manifest | String | The platform manifest's digest. | |
download | u64 | What a pull downloads. | |
unpacked | u64 | What the pulled image takes on the host. | |
disk | u64 | The disk the Space sees (a VM's virtual disk; a container's root filesystem). |
AppImageFieldView record#| Field | Type | Default | Description |
|---|---|---|---|
text | String | The text. | |
open | bool | Show the suggestions (open and something matches). | |
groups | Vec<AppSuggestionGroup> | The suggestions, filtered while typing. | |
error | Option<String> | One line when the ref cannot be used. | |
custom | bool | The text is not a preset. |
AppImageSuggestion record#| Field | Type | Default | Description |
|---|---|---|---|
image_ref / imageRef | String | Image ref (what picking it fills in). | |
label | String | The image's name, shown after the ref. | |
highlighted | bool | The keyboard highlight. | |
selected | bool | The field holds this preset. |
AppSuggestionGroup record#| Field | Type | Default | Description |
|---|---|---|---|
id | String | Group id. | |
label | String | Title. | |
rows | Vec<AppImageSuggestion> | Matching presets. |
AppImageDistro record#| Field | Type | Default | Description |
|---|---|---|---|
id | String | ubuntu, omarchy, macos, windows. | |
name | String | Pretty name ("Ubuntu 24.04", "Omarchy"). |
AppImageTier enum#.slim
.full
.xcode| Variant | Description |
|---|---|
Slim | The minimum that passes cua-spacesd doctor --strict (what CI runs). |
Full | The default: slim plus dev tooling. |
Xcode | macOS: full plus one pinned Xcode. |