PNUT Files
A PNUT file is a portable .json export of your work - a snapshot you can back up, share, or
import into another project. It's the format behind every Import and Export control in the
app.
Where Everything Lives
Two structures sit behind PNUT: your account (the persistent library) and the projects inside it.
The account holds everything reusable, above any single project:
Account (or Organisation)
├── Projects the workspaces you build
├── Templates one-time radio setups you drop onto the map
└── Presets live-linked settings shared across radios
A project is its own object hierarchy - networks of radios, plus any path profiles:
Project
├── Network
│ ├── Radio
│ ├── Radio
│ └── Path Profile
└── Network
└── Radio
See Core Concepts for how account-level and project-level objects differ, and why templates are copied while presets stay linked.
What a PNUT File Can Hold
A PNUT file is not tied to one fixed scope - what it contains depends on where you export it from:
| Export from | Contents |
|---|---|
| A project (right sidebar or context menu) | The whole project: every network, every radio, their path profiles, and any presets they use. |
| A single network (its context menu) | Just that network - only its own radios, path profiles and presets. |
Because a network export is a valid PNUT file in its own right, you can lift one network out of a project and import it into another, without carrying the rest of the project along.
Importing
There are two places to import from, and they do different things:
| Import from | Result |
|---|---|
| The project panel on the right sidebar ( Import PNUT File(s)), or the project's context menu | Merges the file's contents into the project you're currently in. The imported networks and radios are added alongside what's already there; nothing is replaced. |
| The Import button on the account's Projects screen | Creates a new project per file. Several files can be selected at once, and each becomes its own project. |
So the same file can either be folded into work in progress or brought in as a project of its own - which one you get depends only on where you started the import.
Example
A minimal PNUT file with one network, one radio, and no presets:
{
"name": "Ibiza Project",
"networks": [
{
"id": 1,
"name": "Network 1",
"colour": "#22c55e",
"multi_links_enabled": false,
"merge_area_heatmaps_enabled": false
}
],
"radios": [
{
"id": 1,
"name": "Site A",
"network_id": 1,
"visible": true,
"locked": false,
"position": { "latitude_deg": 38.906839, "longitude_deg": 1.43637, "altitude": 5 },
"settings": { "output": {}, "transmitter_antenna": {}, "receiver": {}, "model": {} }
}
],
"presets": []
}
radios[].settings holds the full RF configuration (output, antenna, receiver, model and feeder
groups - see Radios); it's abbreviated here. links carries path profiles, and
presets carries any account presets the radios reference, so an import can re-link them.