Skip to content

Rebuild every template as a finished site, not an outline - #374

Merged
singhharsh1708 merged 1 commit into
mainfrom
content/deepen-templates-batch-1
Sep 5, 2026
Merged

Rebuild every template as a finished site, not an outline#374
singhharsh1708 merged 1 commit into
mainfrom
content/deepen-templates-batch-1

Conversation

@singhharsh1708

Copy link
Copy Markdown
Owner

The screenshot that started this: a heading and two lines of body in the left third of an empty 1440px screen. I measured why.

before after
sections 88 188
words of copy 1,453 4,940
sections per template 4.2 9.0
content sections per template 3.7 7.0
words per template 69 235
words per section 17 55

69 words is a tweet. Every template is now nine sections with the structure a landing page actually has — open, the problem, two or three capabilities, an objection answered honestly, then the ask.

The existing copy was kept and extended, not replaced. It was already good: "We buy the whole lot or none of it, which means the price is agreed before harvest and the farmer is not gambling on us." The problem was never quality, only quantity.

Five templates were different

aurabeauty, nightrealm, tripvault, greenshift and ember were written in generic marketing language and carried claims my earlier sweep missed:

  • "Over 180,000 happy customers"
  • "Join 8 million warriors"
  • "Series B — $42M raised", "120+ enterprise partners"
  • "Microsoft, Shopify, and 118 other companies trust GreenShift"

That last one names real companies as customers of a fictional product. Exported unchanged, the owner publishes it as their own customer list. All five are rewritten in the voice of the other sixteen.

Why the earlier test missed them

[\d,.]+\s*…(teams|customers) failed on "Over 180,000 happy customers" because a word sits between the number and the noun, and "8 million warriors" because that noun wasn't listed. The test now allows filler words, covers more nouns, catches funding rounds, and separately refuses any real company name.

Anchoring to a digit turned out to matter: [\d,.]+ also matches a bare full stop, so my first widened version flagged ". Most teams are running their first pipeline review" as a customer count. Three false positives on legitimate new copy caught it.

A depth floor is now enforced — six content sections, 150 words, and a body on every non-statement section — so this cannot quietly regress.

One thing the export got wrong

Anchors came out 1,2,3,5,6,7,9 — the spacer indices were missing, so the README's "#section-2 is the second section" wasn't literally true. Spacers now carry their anchor too: contiguous 1–9.

Verified end to end

Exported tripvault through the real button, unzipped, served, driven in Chrome:

section ids: section-1 … section-9   contiguous: True
clicking "Download TripVault" (#section-9)   scrollY 0 -> 10400  SCROLLED
body copy in the exported page: 172 words
footer: 165px, © 2026 TripVault. All rights reserved.
console errors: []

Lighthouse on the served export: 100 / 100 / 100 / 100 on mobile and desktop, LCP 1.3s and 0.2s — unchanged.

Deliberately not done

Images. Templates still ship zero, and I think that is correct: an exported ZIP cannot carry a local file, exportableImage drops anything that is not http(s), so template images would have to be hotlinks to somebody else's server that rot on their schedule. The canvas background is the visual.

Scrim. I measured text contrast against the canvas directly behind the glyphs on the two brightest palettes: 11.08–11.2:1 against a 3.0 floor for large text, and 15–18:1 on a mid palette. scrim being unused on all 188 sections is correct, not a gap.

Suite 365 passed. Three of the new tests fail on main.

Measured the library: 88 sections across 21 templates carrying 1,453 words. That
is 4.2 sections and 69 words per template, or 17 words a section - a heading and
one sentence, in the left third of an empty screen. That is what made them read
as slides.

Every template is now nine sections and roughly 235 words: 188 sections and
4,940 words across the library. The structure is the one a landing page actually
has - open, the problem, two or three capabilities, an objection answered
honestly, then the ask - and the existing copy was kept and extended rather than
replaced, because the voice in it was already good.

Five templates were the exception. aurabeauty, nightrealm, tripvault, greenshift
and ember were written in generic marketing language and carried claims the
earlier sweep missed: "Over 180,000 happy customers", "Join 8 million warriors",
"Series B - $42M raised", "120+ enterprise partners", and worst, "Microsoft,
Shopify, and 118 other companies trust GreenShift" - real companies named as
customers of a fictional product, which an owner would publish as their own.
Those five are rewritten.

The claims test that missed them is now stricter: it allows filler words between
a number and its noun, covers more nouns, catches funding rounds, and separately
refuses any real company name in template copy. Anchoring the number to a digit
matters - [\d,.]+ also matches a bare full stop, which made ". Most teams are
running their first review" look like a customer count.

A depth floor is enforced: six content sections, 150 words, and a body on every
section that is not a bare statement.

Spacer sections now carry their anchor too, so ids run 1 to 9 with no gaps and
the README's "section-2 is the second section" is literally true.

Verified by exporting through the real button: nine contiguous anchors, the
opening CTA scrolls 0 to 10,400px, 172 words of body copy in the page, footer
intact, no invented claims. Lighthouse unchanged at 100 across performance,
accessibility, best practices and SEO on mobile and desktop.

Suite 365 passed; three of the new tests fail on main.
@vercel

vercel Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
scrollcraft Ready Ready Preview Sep 5, 2026 3:12pm UTC

@singhharsh1708
singhharsh1708 merged commit 7bb128f into main Sep 5, 2026
3 checks passed
@singhharsh1708
singhharsh1708 deleted the content/deepen-templates-batch-1 branch September 5, 2026 15:13
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