Skip to content

Add series support and publish "ai didn't break the laws of physics"#13

Merged
rdavid1099 merged 1 commit into
mainfrom
add-understand-clients-1-post
Jun 16, 2026
Merged

Add series support and publish "ai didn't break the laws of physics"#13
rdavid1099 merged 1 commit into
mainfrom
add-understand-clients-1-post

Conversation

@rdavid1099

Copy link
Copy Markdown
Contributor

Problem

The build pipeline had no way to express ordered multi-part series. Posts inside a theme folder all sorted newest-first with no concept of reading order, and there was no mechanism for a theme to surface a human-readable series title or per-post part numbers.

Solution

Extended build.js to recognize a theme folder as a "series" when every post in it declares an integer part frontmatter field. Series themes sort ascending by part number instead of descending by date, use the series frontmatter string as their section heading on the homepage and listing page, and render a small "Part N" kicker above each post title in every listing context. A helper isSeriesPosts drives all of this so the logic stays in one place. The homepage sort also promotes series sections above regular topic buckets so a curated reading path sits above unordered tag groupings.

Added a .post-part CSS rule to render the kicker as a small, muted, uppercase label that sits cleanly above the post title without competing with it.

With the infrastructure in place, published the first post in the "understanding clients in the age of ai" series: "ai didn't break the laws of physics," which covers the Entity Knowledge Base Engine rebuild at Table22, the scope-cutting discipline that made it shippable in a week, and why de-risking in throwaway prototypes was the real prerequisite for committing to permanent architecture.

Notes

The series heading on the listing page and homepage is pulled from posts[0].series, so all posts in a series folder must carry the same series value. A mismatch won't error today; it will silently use whatever the first (lowest part number) post declares.

# Problem

The build pipeline had no way to express ordered multi-part series. Posts inside a theme folder all sorted newest-first with no concept of reading order, and there was no mechanism for a theme to surface a human-readable series title or per-post part numbers.

# Solution

Extended `build.js` to recognize a theme folder as a "series" when every post in it declares an integer `part` frontmatter field. Series themes sort ascending by part number instead of descending by date, use the `series` frontmatter string as their section heading on the homepage and listing page, and render a small "Part N" kicker above each post title in every listing context. A helper `isSeriesPosts` drives all of this so the logic stays in one place. The homepage sort also promotes series sections above regular topic buckets so a curated reading path sits above unordered tag groupings.

Added a `.post-part` CSS rule to render the kicker as a small, muted, uppercase label that sits cleanly above the post title without competing with it.

With the infrastructure in place, published the first post in the "understanding clients in the age of ai" series: "ai didn't break the laws of physics," which covers the Entity Knowledge Base Engine rebuild at Table22, the scope-cutting discipline that made it shippable in a week, and why de-risking in throwaway prototypes was the real prerequisite for committing to permanent architecture.

# Notes

The series heading on the listing page and homepage is pulled from `posts[0].series`, so all posts in a series folder must carry the same `series` value. A mismatch won't error today; it will silently use whatever the first (lowest part number) post declares.
@rdavid1099 rdavid1099 force-pushed the add-understand-clients-1-post branch from 81af831 to c8ee606 Compare June 16, 2026 03:17
@rdavid1099 rdavid1099 merged commit 4cf855a into main Jun 16, 2026
1 check passed
@rdavid1099 rdavid1099 deleted the add-understand-clients-1-post branch June 16, 2026 03:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant