Skip to content

feat(landing): show adoption the site could already prove - #27

Merged
datlechin merged 1 commit into
mainfrom
feat/adoption-proof
Aug 18, 2026
Merged

feat(landing): show adoption the site could already prove#27
datlechin merged 1 commit into
mainfrom
feat/adoption-proof

Conversation

@datlechin

Copy link
Copy Markdown
Member

Two of the three things the teardown flagged as missing. The third, motion, still is — there are no recordings in this repo and I can't make any.

The download count was arriving all along

Every asset in the GitHub releases payload carries download_count. The controller mapped straight past it, so the page had no adoption number while one sat in a response it was already caching for sixty seconds. No new request, no key, no database.

50,506 across 24 app releases, live from the API.

DMG assets only. Each release also ships a .zip — that's the feed the installed app updates from, and its count runs close to the DMG's (43,226 vs 50,506). Folding those in would report automatic updates as people choosing to install. The DMG is what the download button serves, so it's the honest one. The test fake gives every zip 9,000 downloads so a regression that counts them can't pass quietly.

It replaces the download-size cell rather than adding a seventh — the size was already in the hero fine print and again in the closing CTA, and a third copy bought nothing.

before   databases │ cold_start │ idle_rss │ download  │ license │ latest
                                            ~20 MB

after    databases │ cold_start │ idle_rss │ downloads │ license │ latest
                                            50,506
                                            Across 24 releases

The count travels with the number of releases it covers, and the cell says so. One page of releases reaches back only so far and most are plugin releases, so this is a floor, not a lifetime total, and the page shouldn't imply otherwise.

When the API is unreachable the cell falls back to the size, so the table never renders a hole. That path is not theoretical — I hit it while verifying, because GitHub's unauthenticated limit is 60/hour against a 60-second cache. Both branches are tested.

Social proof: nothing invented, and nothing to quote

No testimonial has been fabricated, and none was found to fabricate from. Hacker News has no TablePro thread — the 456 Algolia hits are Tablerone, Tableplop, table_print and a cap-table spreadsheet. No Product Hunt launch surfaced either.

What does exist is third-party and checkable:

The project's own README already carries the Trendshift badge, so this is published recognition, not a claim about ourselves. It renders as one fine-print line, linked, so a reader verifies it in a click. A trophy row would be louder than the numbers above it, and the numbers are the argument.

What is still missing

Motion. The page asserts sub-second cold start, streaming results and deferred-commit editing in prose over static PNGs. Three six-to-ten-second silent loops would prove two of those. I can't record them, and inventing a screenshot is the same defect as the 4.9-star rating.

Verification

pint:      passed
Tests:     171 passed (2179 assertions)   ← REQUIRE_SSR=1, no skips
typecheck: only the 2 pre-existing ssr.tsx errors

Verified live from the controller before the rate limit hit: total => 50506, releases => 24.

Two of the three things the teardown said were missing. The third, motion, still
is — there are no recordings in this repository and I cannot make any.

The download count was arriving all along. Every asset in the GitHub releases
payload carries `download_count`, the controller mapped past it, and the page
had no adoption number while one sat in a response it was already caching for
sixty seconds. Reading it costs no request, no key and no database.

DMG assets only. Each app release also ships a .zip, which is the feed the
installed app updates from, and its count runs close to the DMG's — folding
those in would report automatic updates as people choosing to install. The DMG
is what the download button serves, so it is the honest one. At the time of
writing that is 50,506 across 24 app releases.

It replaces the download-size cell rather than adding a seventh. The size was
already in the hero fine print and again in the closing call to action, and a
third copy bought nothing. When the API is unreachable the cell falls back to
the size, so the table never renders a hole — worth having, since GitHub's
unauthenticated limit is sixty an hour against a sixty-second cache.

The count travels with the number of releases it covers, and the cell says so.
One page of releases reaches back only so far and most of them are plugin
releases, so this is a floor rather than a lifetime total, and the page should
not imply otherwise.

For social proof: no testimonial has been invented, and none was found to quote.
Hacker News has no TablePro thread — the 456 search hits are Tablerone,
Tableplop and table_print. What does exist is third-party and checkable: #1 on
GitHub Trending on 23 March 2026, and Trendshift's #1 Swift repository of that
week. It renders as one fine-print line, linked so a reader can verify it in a
click. A trophy row would be louder than the numbers above it, and the numbers
are the argument.
@datlechin
datlechin merged commit 02eda7a into main Aug 18, 2026
5 checks passed
@datlechin
datlechin deleted the feat/adoption-proof branch August 18, 2026 02:46
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