The .nullcad Archive
NullCad projects are saved as a ZIP-based archive format (.nullcad),
containing:
manifest.json — project metadata, resource index, phase status
document/ — geometry, layers, document metadata, comparisons,
selection sets
operations/ — complete operation history
state/ — camera positions, snap config, application settings
resources/ — embedded files (PDFs, images, field data)
Why an archive, not a single JSON file?
Bundling resources (reference PDFs, images, field data files) directly in
the project file means a .nullcad file is fully self-contained — moving,
copying, or archiving one file preserves everything needed to reopen the
project exactly as it was, without broken links to external files.
Legacy JSON format
Older NullCad projects were saved as plain JSON. These are automatically detected and migrated on load — you don’t need to convert them manually.
Operation history as audit trail
The operations/ directory holds the complete, append-only operation log
for the document (see Operation System) —
every mutation ever made, in order, including the ones later undone. This
gives every .nullcad file a full audit trail of how the survey model was
built, not just its final state.
Resource management
Plans, photos, and field data files can be embedded directly in the
project archive under resources/ and referenced from geometry or
annotations — e.g. a PlanImage geometry object placing a reference PDF page
in world space, or a resource attached to a point for field documentation.
Related formats
.ncweb— a separate, purpose-built bundle for the companion web viewer. See Web Viewer Bundle.