dist.town

docs/Start here

Start here


Sharing a release should be the easy part. This page takes you from nothing to a published release with notes: three commands and a markdown file.

What you need

  • An ATProto account — the same kind of account you’d use on Bluesky or Tangled. New to the ecosystem? Get an account. Your releases are published as records in your repo, signed by your identity; dist.town never holds them.
  • The disttown CLI — see Install.

1. Log in

sh
disttown login your-handle.example

Your browser opens for OAuth against your own PDS. Running over SSH or in automation? Use --app-password instead.

2. Publish

sh
disttown publish 1.0.0 dist/mytool-linux-amd64.tar.gz \
  --project mytool \
  --notes notes.md \
  --blobs

That one command hashes your artifacts, uploads them, and writes the release, its notes, and a latest pointer in a single atomic commit to your repo. There is no separate “create project” step — publishing a version creates the project on first release.

  • --notes notes.md publishes your markdown as release notes, readable on your release page and in any standard.site reader.
  • --blobs stores artifact bytes on your own PDS — the zero-setup path, right for small artifacts.

Big files? Bring your own storage instead of --blobs: see storage in the CLI reference.

3. That’s it — see it live

Your project now has a page and a steady address:

  • https://dist.town/your-handle.example/mytool — the project page: releases, notes, downloads.
  • https://dist.town/your-handle.example/mytool@latest — always the newest release.
  • https://dist.town/your-handle.example/mytool@1.0.0 — this release, forever.

Scripts can fetch artifacts and checksums from the same addresses — see the front door.

Where to go next

  • Ship the next version the same way; latest moves automatically (or manage channels with disttown pointer set).
  • Attach or revise notes on any already-published version with disttown changelog set.
  • Organize multi-component projects with nesting and publications — see How dist.town thinks.
  • Something shipped broken? disttown yank marks a release do-not-newly-adopt without breaking anyone’s pins.