Template packs
Catalog concepts plus immutable versions. No pack is installable until it has a published schema-v2 version and verified members.
Platform catalog concepts
maintained by BuildWithHQ · visible to every builder| Pack | Category | Status | Contents | |
|---|---|---|---|---|
Field Service Platform field_service_platform | Platform concept | Catalog only | No published version · sort 10 | |
AI Groupware Platform groupware_platform | Platform concept | Catalog only | No published version · sort 20 | |
CRM & Sales Platform crm_sales_platform | Platform concept | Catalog only | No published version · sort 30 | |
AI Helpdesk Platform ai_helpdesk_platform | Platform concept | Catalog only | No published version · sort 40 | |
Franchise Command Center franchise_command_center | Platform concept | Catalog only | No published version · sort 50 | |
Online Training Platform online_training_platform | Platform concept | Catalog only | No published version · sort 60 |
My template packs
private to this builder account| Pack | Category | Status | Contents | |
|---|---|---|---|---|
No private packs yet Save a working SaaS as a draft pack, validate it, and publish an immutable version. | ||||
The six current rows are catalog placeholders only. They do not yet have immutable TemplateVersions or TemplatePackVersionMembers, so the creation flow must disable them. A pack becomes installable only after publication produces a schema-v2 manifest, payload fingerprint, member-set fingerprint, verified member payloads, and at least one page.
Behind this page/template-packs · CanManageTemplates
Retrieve
sp_GetTemplatePackCatalog may return catalog concepts, but the installable selector must join an exact TemplateVersionId where TemplateType=Pack, Status=Published, ArtifactSchemaVersion=2, both fingerprints are present and valid, all member fingerprints verify, manifest counts match, and at least one Page member exists.
Save
Save-as-pack creates a private unpublished draft. Validation prepares the immutable member set. Publication writes a new version; never mutate an existing published version. App installation pins TemplatePackVersionId, not a pack key and not “latest.”
Success
- Catalog-only rows show “Not ready” and cannot be selected.
- Owned packs stay isolated to the owning builder account.
- Snapshot installation creates tenant-private copies with no downstream sync.
- Fingerprint or manifest mismatches fail closed.
CLI handoff
Implement this scaffold from the structured contract, then remove hard-coded preview rows. The source of truth is CLI Handoff and admin-cli-manifest.json.
Server-inject identity and scope values; never trust browser-supplied account, app, tenant, user, entitlement, price, or permission identifiers. Preserve the loading, empty, forbidden, failed, retrying, and completed states shown by the preview.