HCTHE HCLAB

Frameworks

Frameworks are long-form research pieces that render on /research/[slug]. They power the Research pillar and can be featured on the homepage.

Admin path

/admin/frameworks → New framework → /admin/frameworks/new

Fields

Field Purpose
Title Framework name
Slug URL segment — auto-generated if blank
Category label Display label (e.g. "Research") — text only, not linked to category FK
Summary Card text and default teaser
Visibility / Teaser See Access & gating
Accent color Hex color for framework cards (e.g. #2563EB)
Order index Sort order on listings — lower numbers appear first
Sections (JSON) Structured body content
Featured on homepage Shows in homepage research section
Published Live on public site

Sections JSON format

The body is stored as JSON — an array of sections, each with a heading and paragraphs:

[
  {
    "heading": "The premise",
    "paragraphs": [
      "First paragraph of this section.",
      "Second paragraph — blank lines in the CMS become separate paragraphs."
    ]
  },
  {
    "heading": "Implications",
    "paragraphs": ["One paragraph here."]
  }
]

Rules:

  • Must be valid JSON (use double quotes)
  • Each section needs "heading" (string) and "paragraphs" (array of strings)
  • Plain text only — no Markdown in paragraph bodies

Step-by-step: publish a framework

  1. /admin/frameworks/new
  2. Title, summary, accent color
  3. Paste or edit the Sections JSON (start from the template in the form)
  4. Set Order index if you want a specific sort position
  5. Check Published and optionally Featured on homepage
  6. Save → verify at /research/[slug]

Public behavior

Flag Effect
Published Visible on /research listing and detail page
Featured Eligible for homepage featured research block
Order index Controls sort on /research

Signed-in members can Save frameworks to their account (/account).

Tips

  • Copy the JSON template from a new framework form and edit incrementally
  • Validate JSON in a formatter before saving — invalid JSON will fail on submit
  • Use Category label for display grouping; it does not filter pillar pages
  • Framework slugs appear in podcast Research links JSON — keep slugs stable