3/3
Compatible templates clearing the recipe-aware polish audit.
Theme recipe
A tighter SaaS treatment with crisp hierarchy, restrained spacing, and clean control rhythm.
faq1form-template3hero3icon-card-grid3markdown1convert3educate5hook3A scannable collection index with cards and optional structured filtering.
{
"schema_version": "ensemble.template-review.clone.v0",
"clone_group": "common-page-templates-v1",
"template_id": "common-listing",
"route": "/demo-sites/page-templates/listing",
"api_href": "/api/ensemble/templates/pages/common-listing?include_page=true",
"title": "Listing Template",
"description": "A scannable collection index with cards and optional structured filtering.",
"primary_goal": "listing_engagement",
"layout": {
"template": "common-listing",
"theme": "ensemble-daylight",
"variant": "shadcn"
},
"page_config": {
"surface": {
"mode": "standard",
"chrome": "theme",
"width": "content",
"min_height": "content"
},
"appearance": {
"preset": "shadcn",
"allowed_presets": [
"shadcn",
"bento",
"glassmorphic",
"elevated",
"block",
"dashboard",
"neumorphic"
],
"density": "compact",
"motion": "subtle"
}
},
"slot_model": [
{
"slot": "listing_intro",
"label": "Listing Intro",
"block_id": "common-listing-hero",
"block_type": "hero",
"required": true,
"editable_fields": [
"eyebrow",
"title",
"subtitle",
"cta",
"visual",
"background",
"metrics"
],
"editable_field_count": 7,
"role": "hook",
"clone_priority": 1,
"summary": "7 editable fields on hero for hook."
},
{
"slot": "listing_cards",
"label": "Listing Cards",
"block_id": "common-listing-listing_cards",
"block_type": "icon-card-grid",
"required": true,
"editable_fields": [
"title",
"description",
"cards",
"columns",
"layout"
],
"editable_field_count": 5,
"role": "educate",
"clone_priority": 2,
"summary": "5 editable fields on icon-card-grid for educate."
},
{
"slot": "listing_filter_capture",
"label": "Listing Filter Capture",
"block_id": "common-listing-listing_filter_capture",
"block_type": "form-template",
"required": true,
"editable_fields": [
"formTemplateId",
"title",
"description",
"fields",
"event_name",
"settings"
],
"editable_field_count": 6,
"role": "convert",
"clone_priority": 3,
"summary": "6 editable fields on form-template for convert."
}
],
"slot_summary": {
"slot_count": 3,
"editable_field_count": 18,
"roles": [
"hook",
"educate",
"convert"
]
},
"compatible_recipes": [
"polished-saas-crisp",
"minimal-ink",
"compact-ops",
"local-service-trust",
"operator-product"
],
"compatible_themes": [
"ensemble-daylight",
"ensemble-minimal-ink",
"ensemble-ops-dark",
"ensemble-foundry-lab",
"cloud-elephants-deep-sky",
"cloud-elephants-aqua-operator",
"cloud-elephants-coral-launch",
"cloud-elephants-ink-mist"
],
"seo_model": {
"required_fields": [
"title",
"description",
"canonical_url",
"open_graph.title",
"open_graph.description",
"open_graph.image"
],
"social_preview_fields": [
"title",
"description",
"image",
"image_alt",
"site_name",
"locale",
"twitter_card"
],
"structured_data_policy": "explicit-json-ld-only",
"suggested_json_ld_types": [
"CollectionPage",
"ItemList"
]
},
"cms_usage": {
"replace_placeholders": true,
"review_required_before_publish": true,
"safe_for_static_export": true,
"safe_for_wordpress_snapshot": true
},
"polish_audit": {
"protocol": "ensemble.template-polish.v0",
"status": "ready",
"score": 100,
"ready_count": 7,
"dimension_count": 7,
"dimensions": [
{
"id": "composition-ready",
"label": "CMS composition",
"status": "ready",
"evidence": [
"3 editable slots",
"3 cloneable blocks"
]
},
{
"id": "recipe-alignment",
"label": "Recipe alignment",
"status": "ready",
"evidence": [
"5 compatible recipes",
"8 compatible themes",
"default shadcn"
]
},
{
"id": "visual-assets",
"label": "Visual assets",
"status": "ready",
"evidence": [
"replaceable image or media fields are present"
]
},
{
"id": "action-clarity",
"label": "Action clarity",
"status": "ready",
"evidence": [
"primary actions, links, or conversion role detected"
]
},
{
"id": "proof-and-trust",
"label": "Proof and trust",
"status": "ready",
"evidence": [
"proof role, metrics, FAQs, testimonials, or evidence cards detected"
]
},
{
"id": "seo-social-ready",
"label": "SEO and social",
"status": "ready",
"evidence": [
"Open Graph fields required",
"JSON-LD remains explicit-only"
]
},
{
"id": "responsive-surface",
"label": "Responsive surface",
"status": "ready",
"evidence": [
"surface standard",
"density compact"
]
}
],
"next_actions": []
},
"blocks": [
{
"id": "common-listing-hero",
"block_type": "hero",
"block_order": 1,
"metadata": {
"block_role": "hook",
"template_slot": "listing_intro",
"cloneable": true,
"clone_priority": 1,
"editable_fields": [
"eyebrow",
"title",
"subtitle",
"cta",
"visual",
"background",
"metrics"
]
},
"props": {
"eyebrow": "Listing",
"title": "Browse a curated collection.",
"subtitle": "Use this page for resources, locations, partners, case studies, products, or any collection that needs scannable cards.",
"background": {
"image": "data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221200%22%20height%3D%22720%22%20viewBox%3D%220%200%201200%20720%22%3E%3Crect%20width%3D%221200%22%20height%3D%22720%22%20fill%3D%22%23f7fbff%22%2F%3E%3Crect%20x%3D%2296%22%20y%3D%2288%22%20width%3D%221008%22%20height%3D%22544%22%20rx%3D%2242%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.18%22%2F%3E%3Ccircle%20cx%3D%22304%22%20cy%3D%22288%22%20r%3D%2294%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22244%22%20width%3D%22392%22%20height%3D%2234%22%20rx%3D%2217%22%20fill%3D%22%23142033%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22306%22%20width%3D%22510%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.52%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22352%22%20width%3D%22328%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.34%22%2F%3E%3Ctext%20x%3D%2296%22%20y%3D%22675%22%20font-family%3D%22Inter%2CArial%2Csans-serif%22%20font-size%3D%2232%22%20font-weight%3D%22800%22%20fill%3D%22%23142033%22%3EListing%20placeholder%3C%2Ftext%3E%3C%2Fsvg%3E",
"alt_text": "Browse a curated collection. visual",
"overlay": "dark"
},
"visual": {
"image": "data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221200%22%20height%3D%22720%22%20viewBox%3D%220%200%201200%20720%22%3E%3Crect%20width%3D%221200%22%20height%3D%22720%22%20fill%3D%22%23f7fbff%22%2F%3E%3Crect%20x%3D%2296%22%20y%3D%2288%22%20width%3D%221008%22%20height%3D%22544%22%20rx%3D%2242%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.18%22%2F%3E%3Ccircle%20cx%3D%22304%22%20cy%3D%22288%22%20r%3D%2294%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22244%22%20width%3D%22392%22%20height%3D%2234%22%20rx%3D%2217%22%20fill%3D%22%23142033%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22306%22%20width%3D%22510%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.52%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22352%22%20width%3D%22328%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.34%22%2F%3E%3Ctext%20x%3D%2296%22%20y%3D%22675%22%20font-family%3D%22Inter%2CArial%2Csans-serif%22%20font-size%3D%2232%22%20font-weight%3D%22800%22%20fill%3D%22%23142033%22%3EListing%20placeholder%3C%2Ftext%3E%3C%2Fsvg%3E",
"alt_text": "Browse a curated collection. visual",
"title": "Replaceable hero media"
},
"cta": {
"text": "Request a recommendation",
"href": "#primary-action",
"aria_label": "Browse a curated collection.: Request a recommendation"
},
"appearance": {
"preset": "shadcn"
}
}
},
{
"id": "common-listing-listing_cards",
"block_type": "icon-card-grid",
"block_order": 2,
"metadata": {
"block_role": "educate",
"template_slot": "listing_cards",
"cloneable": true,
"clone_priority": 2,
"editable_fields": [
"title",
"description",
"cards",
"columns",
"layout"
]
},
"props": {
"title": "Featured entries",
"description": "Cards are cloneable and can be generated from CMS collection records.",
"columns": 3,
"cards": [
{
"icon": "A",
"title": "Featured item",
"description": "A highlighted entry with a clear summary.",
"span": "wide",
"badges": [
"featured",
"educate"
],
"href": "#listing_cards-1",
"ctaLabel": "Inspect",
"src": "data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221200%22%20height%3D%22720%22%20viewBox%3D%220%200%201200%20720%22%3E%3Crect%20width%3D%221200%22%20height%3D%22720%22%20fill%3D%22%23f7fbff%22%2F%3E%3Crect%20x%3D%2296%22%20y%3D%2288%22%20width%3D%221008%22%20height%3D%22544%22%20rx%3D%2242%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.18%22%2F%3E%3Ccircle%20cx%3D%22304%22%20cy%3D%22288%22%20r%3D%2294%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22244%22%20width%3D%22392%22%20height%3D%2234%22%20rx%3D%2217%22%20fill%3D%22%23142033%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22306%22%20width%3D%22510%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.52%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22352%22%20width%3D%22328%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.34%22%2F%3E%3Ctext%20x%3D%2296%22%20y%3D%22675%22%20font-family%3D%22Inter%2CArial%2Csans-serif%22%20font-size%3D%2232%22%20font-weight%3D%22800%22%20fill%3D%22%23142033%22%3EListing%20placeholder%3C%2Ftext%3E%3C%2Fsvg%3E",
"alt": "Featured item visual"
},
{
"icon": "B",
"title": "Collection item",
"description": "A standard listing card.",
"badges": [
"cms",
"educate"
],
"href": "#listing_cards-2",
"ctaLabel": "View"
},
{
"icon": "C",
"title": "Collection item",
"description": "A standard listing card.",
"badges": [
"cms",
"educate"
],
"href": "#listing_cards-3",
"ctaLabel": "View"
},
{
"icon": "D",
"title": "Collection item",
"description": "A standard listing card.",
"badges": [
"cms",
"educate"
],
"href": "#listing_cards-4",
"ctaLabel": "View",
"metric": "Ready"
}
],
"layout": "bento",
"appearance": {
"preset": "bento"
}
}
},
{
"id": "common-listing-listing_filter_capture",
"block_type": "form-template",
"block_order": 3,
"metadata": {
"block_role": "convert",
"template_slot": "listing_filter_capture",
"cloneable": true,
"clone_priority": 3,
"editable_fields": [
"formTemplateId",
"title",
"description",
"fields",
"event_name",
"settings"
]
},
"props": {
"formTemplateId": "common-listing-filter",
"title": "Refine this listing",
"description": "Share a few details and the team will follow up with a useful next step.",
"event_name": "listing.filter_submitted",
"fields": [
{
"id": "work_email",
"type": "email",
"label": "Work email",
"required": true,
"pii": true
},
{
"id": "message",
"type": "textarea",
"label": "What should the team know?",
"required": false,
"pii": true
}
],
"settings": {
"layout": "conversion",
"intent": "lead",
"assurance_badges": [
"Fast handoff",
"Private by design",
"Clear next step"
],
"privacy_note": "Required fields are marked. We use answers to prepare the next step.",
"submitLabel": "Send details",
"aria_label": "Refine this listing: Send details",
"trackAnalytics": true
},
"submission_policy": {
"require_consent": true,
"retention_days": 365
},
"appearance": {
"preset": "shadcn"
}
}
}
]
}
An editorial article or blog post layout with related reading and newsletter capture.
{
"schema_version": "ensemble.template-review.clone.v0",
"clone_group": "common-page-templates-v1",
"template_id": "common-blog",
"route": "/demo-sites/page-templates/blog",
"api_href": "/api/ensemble/templates/pages/common-blog?include_page=true",
"title": "Blog Template",
"description": "An editorial article or blog post layout with related reading and newsletter capture.",
"primary_goal": "blog_subscription",
"layout": {
"template": "common-blog",
"theme": "ensemble-minimal-ink",
"variant": "block"
},
"page_config": {
"surface": {
"mode": "standard",
"chrome": "theme",
"width": "content",
"min_height": "content"
},
"appearance": {
"preset": "block",
"allowed_presets": [
"shadcn",
"bento",
"glassmorphic",
"elevated",
"block",
"dashboard",
"neumorphic"
],
"density": "comfortable",
"motion": "subtle"
}
},
"slot_model": [
{
"slot": "blog_header",
"label": "Blog Header",
"block_id": "common-blog-hero",
"block_type": "hero",
"required": true,
"editable_fields": [
"eyebrow",
"title",
"subtitle",
"cta",
"visual",
"background",
"metrics"
],
"editable_field_count": 7,
"role": "hook",
"clone_priority": 1,
"summary": "7 editable fields on hero for hook."
},
{
"slot": "article_body",
"label": "Article Body",
"block_id": "common-blog-article_body",
"block_type": "markdown",
"required": true,
"editable_fields": [
"eyebrow",
"lede",
"content",
"callout",
"actions",
"prose_size",
"tone"
],
"editable_field_count": 7,
"role": "educate",
"clone_priority": 2,
"summary": "7 editable fields on markdown for educate."
},
{
"slot": "related_posts",
"label": "Related Posts",
"block_id": "common-blog-related_posts",
"block_type": "icon-card-grid",
"required": true,
"editable_fields": [
"title",
"description",
"cards",
"columns",
"layout"
],
"editable_field_count": 5,
"role": "educate",
"clone_priority": 3,
"summary": "5 editable fields on icon-card-grid for educate."
},
{
"slot": "newsletter_capture",
"label": "Newsletter Capture",
"block_id": "common-blog-newsletter_capture",
"block_type": "form-template",
"required": true,
"editable_fields": [
"formTemplateId",
"title",
"description",
"fields",
"event_name",
"settings"
],
"editable_field_count": 6,
"role": "convert",
"clone_priority": 4,
"summary": "6 editable fields on form-template for convert."
}
],
"slot_summary": {
"slot_count": 4,
"editable_field_count": 25,
"roles": [
"hook",
"educate",
"convert"
]
},
"compatible_recipes": [
"minimal-ink",
"editorial-luxury",
"polished-saas-crisp",
"tactile-service-ledger",
"regulated-professional"
],
"compatible_themes": [
"ensemble-daylight",
"ensemble-minimal-ink",
"ensemble-ops-dark",
"ensemble-foundry-lab",
"cloud-elephants-deep-sky",
"cloud-elephants-aqua-operator",
"cloud-elephants-coral-launch",
"cloud-elephants-ink-mist"
],
"seo_model": {
"required_fields": [
"title",
"description",
"canonical_url",
"open_graph.title",
"open_graph.description",
"open_graph.image"
],
"social_preview_fields": [
"title",
"description",
"image",
"image_alt",
"site_name",
"locale",
"twitter_card"
],
"structured_data_policy": "explicit-json-ld-only",
"suggested_json_ld_types": [
"BlogPosting",
"Article",
"BreadcrumbList"
]
},
"cms_usage": {
"replace_placeholders": true,
"review_required_before_publish": true,
"safe_for_static_export": true,
"safe_for_wordpress_snapshot": true
},
"polish_audit": {
"protocol": "ensemble.template-polish.v0",
"status": "ready",
"score": 100,
"ready_count": 7,
"dimension_count": 7,
"dimensions": [
{
"id": "composition-ready",
"label": "CMS composition",
"status": "ready",
"evidence": [
"4 editable slots",
"4 cloneable blocks"
]
},
{
"id": "recipe-alignment",
"label": "Recipe alignment",
"status": "ready",
"evidence": [
"5 compatible recipes",
"8 compatible themes",
"default block"
]
},
{
"id": "visual-assets",
"label": "Visual assets",
"status": "ready",
"evidence": [
"replaceable image or media fields are present"
]
},
{
"id": "action-clarity",
"label": "Action clarity",
"status": "ready",
"evidence": [
"primary actions, links, or conversion role detected"
]
},
{
"id": "proof-and-trust",
"label": "Proof and trust",
"status": "ready",
"evidence": [
"proof role, metrics, FAQs, testimonials, or evidence cards detected"
]
},
{
"id": "seo-social-ready",
"label": "SEO and social",
"status": "ready",
"evidence": [
"Open Graph fields required",
"JSON-LD remains explicit-only"
]
},
{
"id": "responsive-surface",
"label": "Responsive surface",
"status": "ready",
"evidence": [
"surface standard",
"density comfortable"
]
}
],
"next_actions": []
},
"blocks": [
{
"id": "common-blog-hero",
"block_type": "hero",
"block_order": 1,
"metadata": {
"block_role": "hook",
"template_slot": "blog_header",
"cloneable": true,
"clone_priority": 1,
"editable_fields": [
"eyebrow",
"title",
"subtitle",
"cta",
"visual",
"background",
"metrics"
]
},
"props": {
"eyebrow": "Blog",
"title": "Publish a high-signal article or blog entry.",
"subtitle": "Use this template for thought leadership, updates, guides, and editorial posts.",
"background": {
"image": "data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221200%22%20height%3D%22720%22%20viewBox%3D%220%200%201200%20720%22%3E%3Crect%20width%3D%221200%22%20height%3D%22720%22%20fill%3D%22%23f7fbff%22%2F%3E%3Crect%20x%3D%2296%22%20y%3D%2288%22%20width%3D%221008%22%20height%3D%22544%22%20rx%3D%2242%22%20fill%3D%22%23111827%22%20opacity%3D%220.18%22%2F%3E%3Ccircle%20cx%3D%22304%22%20cy%3D%22288%22%20r%3D%2294%22%20fill%3D%22%23111827%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22244%22%20width%3D%22392%22%20height%3D%2234%22%20rx%3D%2217%22%20fill%3D%22%23142033%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22306%22%20width%3D%22510%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.52%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22352%22%20width%3D%22328%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.34%22%2F%3E%3Ctext%20x%3D%2296%22%20y%3D%22675%22%20font-family%3D%22Inter%2CArial%2Csans-serif%22%20font-size%3D%2232%22%20font-weight%3D%22800%22%20fill%3D%22%23142033%22%3EEditorial%20placeholder%3C%2Ftext%3E%3C%2Fsvg%3E",
"alt_text": "Publish a high-signal article or blog entry. visual",
"overlay": "dark"
},
"visual": {
"image": "data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221200%22%20height%3D%22720%22%20viewBox%3D%220%200%201200%20720%22%3E%3Crect%20width%3D%221200%22%20height%3D%22720%22%20fill%3D%22%23f7fbff%22%2F%3E%3Crect%20x%3D%2296%22%20y%3D%2288%22%20width%3D%221008%22%20height%3D%22544%22%20rx%3D%2242%22%20fill%3D%22%23111827%22%20opacity%3D%220.18%22%2F%3E%3Ccircle%20cx%3D%22304%22%20cy%3D%22288%22%20r%3D%2294%22%20fill%3D%22%23111827%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22244%22%20width%3D%22392%22%20height%3D%2234%22%20rx%3D%2217%22%20fill%3D%22%23142033%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22306%22%20width%3D%22510%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.52%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22352%22%20width%3D%22328%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.34%22%2F%3E%3Ctext%20x%3D%2296%22%20y%3D%22675%22%20font-family%3D%22Inter%2CArial%2Csans-serif%22%20font-size%3D%2232%22%20font-weight%3D%22800%22%20fill%3D%22%23142033%22%3EEditorial%20placeholder%3C%2Ftext%3E%3C%2Fsvg%3E",
"alt_text": "Publish a high-signal article or blog entry. visual",
"title": "Replaceable hero media"
},
"cta": {
"text": "Subscribe",
"href": "#primary-action",
"aria_label": "Publish a high-signal article or blog entry.: Subscribe"
},
"appearance": {
"preset": "block"
}
}
},
{
"id": "common-blog-article_body",
"block_type": "markdown",
"block_order": 2,
"metadata": {
"block_role": "educate",
"template_slot": "article_body",
"cloneable": true,
"clone_priority": 2,
"editable_fields": [
"eyebrow",
"lede",
"content",
"callout",
"actions",
"prose_size",
"tone"
]
},
"props": {
"eyebrow": "article body",
"lede": "Use this lead paragraph to frame the section before the full CMS-managed body copy.",
"content": "## Opening argument\n\nStart with the useful idea, then support it with specific examples, evidence, and next steps.\n\n### Key takeaway\n\nUse structured sections so crawlers, readers, and agents can understand the point quickly.",
"callout": {
"title": "Editor note",
"description": "Replace this callout with the strongest supporting proof, quote, or editorial caveat for the page."
},
"actions": [
{
"label": "Review section",
"href": "#article_body"
}
],
"variant": "article",
"prose_size": "md",
"tone": "editorial"
}
},
{
"id": "common-blog-related_posts",
"block_type": "icon-card-grid",
"block_order": 3,
"metadata": {
"block_role": "educate",
"template_slot": "related_posts",
"cloneable": true,
"clone_priority": 3,
"editable_fields": [
"title",
"description",
"cards",
"columns",
"layout"
]
},
"props": {
"title": "Related reading",
"description": "Keep readers moving through a connected editorial path.",
"columns": 3,
"cards": [
{
"icon": "1",
"title": "Related post",
"description": "A sibling article or guide.",
"badges": [
"featured",
"educate"
],
"href": "#related_posts-1",
"ctaLabel": "Inspect",
"src": "data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221200%22%20height%3D%22720%22%20viewBox%3D%220%200%201200%20720%22%3E%3Crect%20width%3D%221200%22%20height%3D%22720%22%20fill%3D%22%23f7fbff%22%2F%3E%3Crect%20x%3D%2296%22%20y%3D%2288%22%20width%3D%221008%22%20height%3D%22544%22%20rx%3D%2242%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.18%22%2F%3E%3Ccircle%20cx%3D%22304%22%20cy%3D%22288%22%20r%3D%2294%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22244%22%20width%3D%22392%22%20height%3D%2234%22%20rx%3D%2217%22%20fill%3D%22%23142033%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22306%22%20width%3D%22510%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.52%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22352%22%20width%3D%22328%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.34%22%2F%3E%3Ctext%20x%3D%2296%22%20y%3D%22675%22%20font-family%3D%22Inter%2CArial%2Csans-serif%22%20font-size%3D%2232%22%20font-weight%3D%22800%22%20fill%3D%22%23142033%22%3EListing%20placeholder%3C%2Ftext%3E%3C%2Fsvg%3E",
"alt": "Related post visual"
},
{
"icon": "2",
"title": "Reference",
"description": "A deeper source or documentation page.",
"badges": [
"cms",
"educate"
],
"href": "#related_posts-2",
"ctaLabel": "View"
},
{
"icon": "3",
"title": "Next step",
"description": "A conversion or learning path.",
"badges": [
"cms",
"educate"
],
"href": "#related_posts-3",
"ctaLabel": "View",
"metric": "Ready"
}
],
"layout": "grid",
"appearance": {
"preset": "bento"
}
}
},
{
"id": "common-blog-newsletter_capture",
"block_type": "form-template",
"block_order": 4,
"metadata": {
"block_role": "convert",
"template_slot": "newsletter_capture",
"cloneable": true,
"clone_priority": 4,
"editable_fields": [
"formTemplateId",
"title",
"description",
"fields",
"event_name",
"settings"
]
},
"props": {
"formTemplateId": "common-blog-subscribe",
"title": "Subscribe for updates",
"description": "Share a few details and the team will follow up with a useful next step.",
"event_name": "blog.subscribe_submitted",
"fields": [
{
"id": "work_email",
"type": "email",
"label": "Work email",
"required": true,
"pii": true
},
{
"id": "message",
"type": "textarea",
"label": "What should the team know?",
"required": false,
"pii": true
}
],
"settings": {
"layout": "conversion",
"intent": "lead",
"assurance_badges": [
"Fast handoff",
"Private by design",
"Clear next step"
],
"privacy_note": "Required fields are marked. We use answers to prepare the next step.",
"submitLabel": "Send details",
"aria_label": "Subscribe for updates: Send details",
"trackAnalytics": true
},
"submission_policy": {
"require_consent": true,
"retention_days": 365
},
"appearance": {
"preset": "shadcn"
}
}
}
]
}
A structured contact page with routing cards, canonical CMS form capture, and support FAQs.
{
"schema_version": "ensemble.template-review.clone.v0",
"clone_group": "common-page-templates-v1",
"template_id": "common-contact",
"route": "/demo-sites/page-templates/contact",
"api_href": "/api/ensemble/templates/pages/common-contact?include_page=true",
"title": "Contact Template",
"description": "A structured contact page with routing cards, canonical CMS form capture, and support FAQs.",
"primary_goal": "contact_submission",
"layout": {
"template": "common-contact",
"theme": "ensemble-daylight",
"variant": "shadcn"
},
"page_config": {
"surface": {
"mode": "standard",
"chrome": "theme",
"width": "content",
"min_height": "content"
},
"appearance": {
"preset": "shadcn",
"allowed_presets": [
"shadcn",
"bento",
"glassmorphic",
"elevated",
"block",
"dashboard",
"neumorphic"
],
"density": "compact",
"motion": "subtle"
}
},
"slot_model": [
{
"slot": "contact_intro",
"label": "Contact Intro",
"block_id": "common-contact-hero",
"block_type": "hero",
"required": true,
"editable_fields": [
"eyebrow",
"title",
"subtitle",
"cta",
"visual",
"background",
"metrics"
],
"editable_field_count": 7,
"role": "hook",
"clone_priority": 1,
"summary": "7 editable fields on hero for hook."
},
{
"slot": "contact_routes",
"label": "Contact Routes",
"block_id": "common-contact-contact_routes",
"block_type": "icon-card-grid",
"required": true,
"editable_fields": [
"title",
"description",
"cards",
"columns",
"layout"
],
"editable_field_count": 5,
"role": "educate",
"clone_priority": 2,
"summary": "5 editable fields on icon-card-grid for educate."
},
{
"slot": "contact_form",
"label": "Contact Form",
"block_id": "common-contact-contact_form",
"block_type": "form-template",
"required": true,
"editable_fields": [
"formTemplateId",
"title",
"description",
"fields",
"event_name",
"settings"
],
"editable_field_count": 6,
"role": "convert",
"clone_priority": 3,
"summary": "6 editable fields on form-template for convert."
},
{
"slot": "contact_faq",
"label": "Contact Faq",
"block_id": "common-contact-contact_faq",
"block_type": "faq",
"required": true,
"editable_fields": [
"items",
"columns"
],
"editable_field_count": 2,
"role": "educate",
"clone_priority": 4,
"summary": "2 editable fields on faq for educate."
}
],
"slot_summary": {
"slot_count": 4,
"editable_field_count": 20,
"roles": [
"hook",
"educate",
"convert"
]
},
"compatible_recipes": [
"compact-ops",
"minimal-ink",
"polished-saas-crisp",
"local-service-trust",
"regulated-professional",
"operator-product",
"tactile-service-ledger"
],
"compatible_themes": [
"ensemble-daylight",
"ensemble-minimal-ink",
"ensemble-ops-dark",
"ensemble-foundry-lab",
"cloud-elephants-deep-sky",
"cloud-elephants-aqua-operator",
"cloud-elephants-coral-launch",
"cloud-elephants-ink-mist"
],
"seo_model": {
"required_fields": [
"title",
"description",
"canonical_url",
"open_graph.title",
"open_graph.description",
"open_graph.image"
],
"social_preview_fields": [
"title",
"description",
"image",
"image_alt",
"site_name",
"locale",
"twitter_card"
],
"structured_data_policy": "explicit-json-ld-only",
"suggested_json_ld_types": [
"ContactPage",
"Organization"
]
},
"cms_usage": {
"replace_placeholders": true,
"review_required_before_publish": true,
"safe_for_static_export": true,
"safe_for_wordpress_snapshot": true
},
"polish_audit": {
"protocol": "ensemble.template-polish.v0",
"status": "ready",
"score": 100,
"ready_count": 7,
"dimension_count": 7,
"dimensions": [
{
"id": "composition-ready",
"label": "CMS composition",
"status": "ready",
"evidence": [
"4 editable slots",
"4 cloneable blocks"
]
},
{
"id": "recipe-alignment",
"label": "Recipe alignment",
"status": "ready",
"evidence": [
"7 compatible recipes",
"8 compatible themes",
"default shadcn"
]
},
{
"id": "visual-assets",
"label": "Visual assets",
"status": "ready",
"evidence": [
"replaceable image or media fields are present"
]
},
{
"id": "action-clarity",
"label": "Action clarity",
"status": "ready",
"evidence": [
"primary actions, links, or conversion role detected"
]
},
{
"id": "proof-and-trust",
"label": "Proof and trust",
"status": "ready",
"evidence": [
"proof role, metrics, FAQs, testimonials, or evidence cards detected"
]
},
{
"id": "seo-social-ready",
"label": "SEO and social",
"status": "ready",
"evidence": [
"Open Graph fields required",
"JSON-LD remains explicit-only"
]
},
{
"id": "responsive-surface",
"label": "Responsive surface",
"status": "ready",
"evidence": [
"surface standard",
"density compact"
]
}
],
"next_actions": []
},
"blocks": [
{
"id": "common-contact-hero",
"block_type": "hero",
"block_order": 1,
"metadata": {
"block_role": "hook",
"template_slot": "contact_intro",
"cloneable": true,
"clone_priority": 1,
"editable_fields": [
"eyebrow",
"title",
"subtitle",
"cta",
"visual",
"background",
"metrics"
]
},
"props": {
"eyebrow": "Contact",
"title": "Make it easy to reach the right team.",
"subtitle": "A contact page should route intent clearly and capture only what the team needs to respond.",
"cta": {
"text": "Start a conversation",
"href": "#primary-action",
"aria_label": "Make it easy to reach the right team.: Start a conversation"
},
"appearance": {
"preset": "shadcn"
}
}
},
{
"id": "common-contact-contact_routes",
"block_type": "icon-card-grid",
"block_order": 2,
"metadata": {
"block_role": "educate",
"template_slot": "contact_routes",
"cloneable": true,
"clone_priority": 2,
"editable_fields": [
"title",
"description",
"cards",
"columns",
"layout"
]
},
"props": {
"title": "Contact routes",
"description": "Give visitors confidence that their request will land in the right place.",
"columns": 3,
"cards": [
{
"icon": "S",
"title": "Sales",
"description": "For pricing, pilots, and commercial questions.",
"badges": [
"featured",
"educate"
],
"href": "#contact_routes-1",
"ctaLabel": "Inspect",
"src": "data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221200%22%20height%3D%22720%22%20viewBox%3D%220%200%201200%20720%22%3E%3Crect%20width%3D%221200%22%20height%3D%22720%22%20fill%3D%22%23f7fbff%22%2F%3E%3Crect%20x%3D%2296%22%20y%3D%2288%22%20width%3D%221008%22%20height%3D%22544%22%20rx%3D%2242%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.18%22%2F%3E%3Ccircle%20cx%3D%22304%22%20cy%3D%22288%22%20r%3D%2294%22%20fill%3D%22%2300a6a6%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22244%22%20width%3D%22392%22%20height%3D%2234%22%20rx%3D%2217%22%20fill%3D%22%23142033%22%20opacity%3D%220.82%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22306%22%20width%3D%22510%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.52%22%2F%3E%3Crect%20x%3D%22446%22%20y%3D%22352%22%20width%3D%22328%22%20height%3D%2222%22%20rx%3D%2211%22%20fill%3D%22%23526174%22%20opacity%3D%220.34%22%2F%3E%3Ctext%20x%3D%2296%22%20y%3D%22675%22%20font-family%3D%22Inter%2CArial%2Csans-serif%22%20font-size%3D%2232%22%20font-weight%3D%22800%22%20fill%3D%22%23142033%22%3EListing%20placeholder%3C%2Ftext%3E%3C%2Fsvg%3E",
"alt": "Sales visual"
},
{
"icon": "P",
"title": "Press",
"description": "For media, speaking, and analyst requests.",
"badges": [
"cms",
"educate"
],
"href": "#contact_routes-2",
"ctaLabel": "View"
},
{
"icon": "H",
"title": "Help",
"description": "For support, account, and implementation questions.",
"badges": [
"cms",
"educate"
],
"href": "#contact_routes-3",
"ctaLabel": "View",
"metric": "Ready"
}
],
"layout": "grid",
"appearance": {
"preset": "bento"
}
}
},
{
"id": "common-contact-contact_form",
"block_type": "form-template",
"block_order": 3,
"metadata": {
"block_role": "convert",
"template_slot": "contact_form",
"cloneable": true,
"clone_priority": 3,
"editable_fields": [
"formTemplateId",
"title",
"description",
"fields",
"event_name",
"settings"
]
},
"props": {
"formTemplateId": "common-contact",
"title": "Send a message",
"description": "Share a few details and the team will follow up with a useful next step.",
"event_name": "contact.submitted",
"fields": [
{
"id": "work_email",
"type": "email",
"label": "Work email",
"required": true,
"pii": true
},
{
"id": "message",
"type": "textarea",
"label": "What should the team know?",
"required": false,
"pii": true
}
],
"settings": {
"layout": "conversion",
"intent": "lead",
"assurance_badges": [
"Fast handoff",
"Private by design",
"Clear next step"
],
"privacy_note": "Required fields are marked. We use answers to prepare the next step.",
"submitLabel": "Send details",
"aria_label": "Send a message: Send details",
"trackAnalytics": true
},
"submission_policy": {
"require_consent": true,
"retention_days": 365
},
"appearance": {
"preset": "shadcn"
}
}
},
{
"id": "common-contact-contact_faq",
"block_type": "faq",
"block_order": 4,
"metadata": {
"block_role": "educate",
"template_slot": "contact_faq",
"cloneable": true,
"clone_priority": 4,
"editable_fields": [
"items",
"columns"
]
},
"props": {
"title": "Questions before visitors continue",
"description": "Use FAQs to remove hesitation without overwhelming the conversion path.",
"columns": 2,
"items": [
{
"question": "When should this page use a form?",
"answer": "Use a form when the team needs structured intake, routing, or consent evidence.",
"category": "Routing",
"default_open": true
},
{
"question": "Can this route to different teams?",
"answer": "Yes. Add a select field or CMS routing metadata to the form template.",
"category": "CMS",
"default_open": false
}
],
"appearance": {
"preset": "outline"
}
}
}
]
}
cloud-elephants-aqua-operator