What it is
cms.
A content item is a titled body plus a JSON data object, addressed by collection and slug. The editable draft lives in one table; every publish appends an immutable revision, so items are versioned and the history of what was public is recoverable. Public routes are reads that serve published content; every write is an admin action behind the admin token, so there is no public write endpoint and no captcha. The content never leaves the venture's own database. It is a content store, not a page builder — the look comes from the UI spec.
Ports
Database
Routes
/v1/cms
- /{collection}
- GET
/v1/cms/{collection} - GET
/v1/cms/{collection}/ {slug} - /admin
- POST
/v1/cms/admin/ save - POST
/v1/cms/admin/ publish - POST
/v1/cms/admin/ unpublish - GET
/v1/cms/admin/ list
UI surface
A save form and an admin list table at /ui; a collection the venture did not configure is refused, so a caller cannot invent one.
History
Changelog.
From the crate’s CHANGELOG.md in the harness, as of 0c5560b. 4 versions recorded, newest first. Every published version is on crates.io.
Other
- updated the following local packages: cratefield-core
Other
- updated the following local packages: cratefield-core
2 earlier versions 0.2.1 to 0.3.0
Changed
- Breaking: requires
cratefield-core0.8 (was 0.7), and so a minor rather than a patch bump: a venture still on core 0.7 does not pick this release up through a caret requirement and end up with two copies of core (#712).
Other
- updated the following local packages: cratefield-core
- Breaking: requires
Other
- updated the following local packages: cratefield-core
Merged, conformant on every dialect with sidecar parity, and a routes test covers the full draft, publish and read lifecycle.