Export Schemas
Plonk JSON exports are versioned. Each version has a defined schema below. When you import a file from an older version, Plonk migrates it automatically. The current export version is v1.
All spatial dimensions are in centimeters. Room shapes are defined by polygon vertices with optional edge bulge values for curved walls. Items are positioned relative to their parent room origin.
Version 1(current)
Introduced: 2025-06-01
First versioned export format. Adds the _exportVersion field for migration support. All dimensions are in centimeters. Room shapes are defined by polygon vertices with optional edge bulge values for curved walls.
| Field | Type | Required | Description |
|---|---|---|---|
_exportVersion | number | Yes | Schema version number. Always 1 for this version. |
id | string | Yes | Layout identifier |
userId | string | Yes | Owner user identifier |
name | string | Yes | Layout display name |
rooms | Room[] | Yes | All rooms in the layout |
items | Item[] | Yes | Items not assigned to any room |
gridSize | number | No | Grid snap size in centimeters |
Migration notes
Files without an _exportVersion field are treated as v0 (legacy format). The migration from v0 to v1 adds the version stamp with no structural changes. Future schema changes will add migration steps that transform data between versions automatically.