The version chain
Each layer locks to a specific version of the layer above it:Packages: versioned component snapshots
A package is an immutable snapshot of your entire component library at a point in time. When you publish a package, Metabind captures:- All component code and compiled output
- Component metadata and properties
- Assets used by components
The draft package
While developing, you work with the draft package — a special version that always reflects your latest component changes. The draft package updates automatically as you edit components.Content types: locked to packages
When you create a content type, you select which package version it uses. This determines which components are available and how they render.| Package reference | Behavior |
|---|---|
| Draft | Uses latest component code. For development only. |
| Published version | Locked to specific component code. Safe for production. |
Update to a new package
When you publish a new package version and want a content type to use it:- Open the content type
- Click the package version indicator
- Select the new version
- Publish the content type
Content: locked to content types
When content is published, it captures the content type version it was created with. This creates a complete chain:- Content v1 → uses Content Type v2 → which uses Package v1.0.1
Why this matters
Imagine you redesign your article layout. With version locking:- New articles use the new layout
- Existing published articles keep the original layout
- No surprises, no broken content
Draft vs. published
Each layer has its own draft/published status:| Layer | Draft state | Published state |
|---|---|---|
| Package | ”draft” — always latest code | ”1.0.0” — frozen snapshot |
| Content Type | Can edit freely, not yet live | Version number assigned, live |
| Content | Work in progress | Live to users |
Publishing rules
The system enforces a logical publishing chain:- Packages can be published anytime
- Content Types can only be published if they reference a published package (not draft)
- Content can only be published if it references a published content type (not draft)
Migrating content
When you update a content type to use a new package or layout, existing content doesn’t automatically update. To migrate content to a newer content type version:- Open the content
- The editor shows if a newer type version is available
- Choose to migrate when ready
- Review changes and publish
Version history
Both content types and content maintain full version history. You can:- View previous versions
- Compare changes between versions
- Restore earlier versions if needed
What’s next
Publishing Packages
Learn how to publish component packages.
Publishing Content
Understand the content publishing workflow.