Publishing, Versions & Rollback
Publishing, Versions & Rollback
Applications ship like software — because they are software. Publishing is versioned, instant, and reversible.
Versions
Each publish creates version N+1, and the latest version is live immediately. Older bundles remain in storage, so you always have a complete history of releases.
Rollback
If a release misbehaves, roll back to any prior version instantly — old bundles are kept, so there is nothing to rebuild. Use the rollback tooling (apps_rollback_version, or POST /api/app-designer/apps/:id/rollback/:versionNumber). List versions with apps_list_versions.
Publishing a layout app
In the visual designer, click Publish. Your changes go live across every surface at once.
Publishing a SPA app
For custom Vue apps, publish from the CLI — it runs the Vite build, zips dist/, and uploads it as a new version:
dm publish --message "first SPA version"
You can also publish programmatically with apps_publish_spa_version (base64 zip + manifest) and inspect a published version with apps_get_spa_manifest.
Bundle limits: the zip must be ≤ 30 MiB, ≤ 100 MiB uncompressed, and ≤ 1,000 files. Declarations in dm.config.json are validated at publish — every declared resource must exist in your company.
Where published apps appear
A published app is automatically available on:
- The DataMagik website — via the app menu and shareable links.
- Inside Plex — through the
datamagik extendbrowser extension. - Mobile — in the DataMagik mobile app.
The extension and mobile open apps through the same embedded-open flow, and screen-context parameters arrive in dm.context.params exactly like the viewer's runtime inputs — so one published version behaves the same everywhere.