From dfeaf09ea280ca6a38bdd1912bc68c9ca76011dc Mon Sep 17 00:00:00 2001 From: Graham Barber Date: Sun, 16 Aug 2026 07:43:53 -0700 Subject: [PATCH] =?UTF-8?q?feat(web):=20reframe=20the=20pitch=20=E2=80=94?= =?UTF-8?q?=20sharing=20made=20easy?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The hero and lede stop leading with sovereignty: 'Every project deserves a release page' over 'Sharing a release should be the easy part. Whatever your project is and wherever it lives, dist.town gives it one page for new versions, changelogs, and files.' PRODUCT.md's Positioning splits into pitch (ease, universality, both audiences as peers) and proof (outlives-the-service, demoted to reason-to-believe), and records the copy rules: no competitors or protocols in pitch copy, mechanics are supporting detail not value proposition, and never ration the audience. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01PWXFcuaRLZycYVAF7senMK --- PRODUCT.md | 4 +++- web/src/routes/+page.svelte | 8 ++++---- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/PRODUCT.md b/PRODUCT.md index ee5394b..4f6ec0e 100644 --- a/PRODUCT.md +++ b/PRODUCT.md @@ -22,7 +22,9 @@ An ATProto-native service for changelogs, releases, and file distribution — Gi ## Positioning -The claim a neighboring product cannot truthfully copy: **releases that outlive the service.** Every project, release, pointer, and changelog resolves without dist.town's involvement (AppView-free resolution chain); dist.town serves zero artifact bytes in v1; a publisher whose storage dies can repair every historical release without editing a single record. Registries centralize custody; dist.town is a lens over data the publisher already owns. +**The pitch: sharing made easy.** dist.town makes it easy to share new versions, changelogs, and files — no matter where or what the project is. The canonical expression (homepage lede, settled 2026-08-16): "Sharing a release should be the easy part. Whatever your project is and wherever it lives, dist.town gives it one page for new versions, changelogs, and files." Rules the copy follows: lead with ease and universality, addressed to publishers and consumers as peers; mechanics (one command, CLI, CI) are publisher-surface supporting detail, never the pitch — they're a consequence of the current form, not a value proposition to everyone; name no competitors and no protocols ("GitHub Releases for projects that don't live on GitHub" is internal orientation shorthand only, and "ATProto" never appears in pitch copy); never ration the audience — reading about new features and fixes is something everyone is owed, not a niche taste. + +**The proof, not the pitch: releases that outlive the service.** The claim a neighboring product cannot truthfully copy — every project, release, pointer, and changelog resolves without dist.town's involvement (AppView-free resolution chain); dist.town serves zero artifact bytes in v1; a publisher whose storage dies can repair every historical release without editing a single record. Registries centralize custody; dist.town is a lens over data the publisher already owns. Reframed 2026-08-16: sovereignty is the reason to believe, never the lead — surfaces cite it as supporting fact (durability, verifiability), not as identity. ## Operating Context diff --git a/web/src/routes/+page.svelte b/web/src/routes/+page.svelte index 62d8285..4d5323c 100644 --- a/web/src/routes/+page.svelte +++ b/web/src/routes/+page.svelte @@ -9,15 +9,15 @@ dist.town
-

Releases on your own terms.

+

Every project deserves a release page.

- Changelogs, versions, and file distribution on ATProto. Records live in your repo, artifacts on - storage you control, everything content-addressed. + Sharing a release should be the easy part. Whatever your project is and wherever it lives, + dist.town gives it one page for new versions, changelogs, and files.

-- 2.51.2