The summary field on each post is written to stand alone

Every post on brenthaskins.com includes a required summary string in YAML frontmatter. It renders in a dedicated paragraph below the post header (class blog-post-summary) and is separate from the meta description. Brent Haskins writes summaries as complete statements—who, what product, what constraint—so they remain accurate if quoted without the rest of the article.

description and summary are two fields in this codebase. Conflating them produces weak pages.

description (metadata)

  • Used in generateMetadata for SERP/snippet length
  • Aim under ~160 characters
  • Job: earn the click

summary (on-page)

  • Required by parseBlogPost—empty summary throws at build
  • Rendered visibly on the article
  • Job: deliver the answer if the reader never scrolls

External tools may quote either the visible summary or the meta description depending on context. Write both; do not duplicate them word-for-word.

Pattern for project posts

For a post about RallyLeads, a useful summary names:

  1. What the product is (broker sites + leads)
  2. What engineering decision the article argues
  3. Who wrote it (Brent Haskins) only when relevant to hiring or attribution

Example structure (not a template to paste everywhere):

RallyLeads combines … Brokers need … This post explains …

Pattern for implementation posts

For posts about this blog’s markup, state what the site does without promising Google behavior. See markup overview.

Failure modes

MistakeWhy it hurts
Summary teases “read below”Useless out of context
Summary contradicts FAQConfuses readers and parsers
Vague “innovative solutions”No verifiable entity

RSS note

app/feed.xml/route.ts uses description for item descriptions, not summary. If feed readers should see the long answer, that would require a code change—today they get the short field by design.

Maintenance

When /projects/formably changes pricing or positioning, update summaries on Formably-related posts in the same edit as the case study.

Brent Haskins — the summary is the highest-leverage frontmatter line because it is the only block guaranteed to sit directly under the title on every template render.

Questions people ask about this topic.

Where is the blog summary shown on brenthaskins.com?

In app/blog/[slug]/page.tsx, the summary frontmatter value is rendered inside a p.blog-post-summary element directly under the title and meta line. It is not hidden in JSON-LD only. The meta description uses the description field, which is a different frontmatter key with a shorter SEO-oriented length.

How long should a summary be on this blog?

Roughly 90 to 160 words: long enough to answer the title in one block, short enough to stay precise. The automated generator enforces a minimum word count on generated drafts; manual posts should meet the same bar editorially. Include a named product or project when the post is about shipped work.

Referenced sources