Skip to content

Publish each release to Nostr + make /changelog/ a welcoming "What's new" page #859

Open

Description

@chappie-daemon

Summary

Two related improvements to how releases reach people:

  1. Publish each release to Nostr. When a release publishes, announce it on Nostr so followers hear about it where they already are.
  2. Beautify the /changelog/ page and rename it "What's new" everywhere. It currently reads like it was made for and by developers. A What's new page should be welcoming to non-technical readers.

Part 1 — Publish each release to Nostr

  • On a relay release (v* tag / GitHub release published), post an announcement note to Nostr
  • Content per release: version, the human-readable highlights (the changeset summaries, rewritten for readers — see part 2), and a link to the release page and/or the What's new page on the website
  • Sender identity: a dedicated nostream announcement npub (key material in GitHub secrets, never in the repo); a fresh key so the account is the project's, not a personal one
  • Optional polish: NIP-98-free plain kind-1 note first; consider long-form (kind 30023) with the highlights as the richer format if the note gets long
  • Mechanics: a step in release.yml (or a separate announce.yml on release: published for v* tags only — the website release tags nostream-website@* must not trigger it) calling a small script; keep the failure non-blocking for the release itself (announcement failure logs a warning, never fails the release)

Part 2 — "What's new" instead of "Changelog"

  • Rename the route label and page: nav item Changelog → What's new, <PageHead kicker> from Changelog → What's new, <Base title> likewise; keep /changelog/ as the URL (or add a redirect if it moves)
  • The version pill in the nav (v3.5.1) keeps pointing at the page
  • Rewrites for non-technical readers:
    • Lead copy loses the changesets jargon ("Generated from changesets on every release") — say what the reader gets: what's new, what got fixed, who shipped it
    • Release entries: changesets' raw summaries name internals (config keys, workflow files, CI). Curate per release into 2–4 reader-facing bullets: what you can now do, what got better, what got fixed — each with a link where one exists (PR, docs section, feature page)
    • Links everywhere possible: PRs, docs anchors, the features they describe
  • Presentation: keep the release rail, give each release a friendly header (version + date + optional release name), pull the PR/author credit lines out of the prose flow into a subtler footer line per release so the highlights breathe
  • The generator (or the release workflow) can produce the curated bullets — but curation is editorial: either a human-approved summary in the release PR, or a highlights: section in the release notes that the page renders verbatim

Notes

  • The website's changesets already produce good raw material (each changeset is written for the site's users); the relay's (nostream package) read more internal — those need the editorial pass most
  • Kind-1 announcements can link straight to the What's new page, which then does the welcoming work

Acceptance

  • A relay release produces a Nostr announcement from the project npub with readable highlights + links
  • /changelog/ presents as "What's new" in nav, page head and title
  • Each visible release entry reads for a non-technical reader: no config keys, no workflow names, no CI jargon in the highlights; everything clickable links somewhere useful

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions