OutPost

From IndieWeb
OutPost for Mac: your sites in the sidebar, and a sortable table of posts from your own site.

OutPost is a native Micropub client for Mac, iPhone and iPad. It signs in with IndieAuth and publishes notes, articles and responses straight to your own website.

There is no OutPost service or account. The app finds the Micropub, authorization and token endpoints your homepage advertises and talks to them directly. Access tokens stay in the Keychain on your device and only go back to the site that issued them.

Status

  • Mac: 1.0 released 2026-10-03, after a public beta that started on 2026-09-22 (announcement). It's a signed, notarized download from jimmitchell.dev and updates itself with Sparkle.
  • iPhone and iPad: 1.0 in public beta on TestFlight since 2026-10-07 (join the beta). Not yet on the App Store.

Features

Writing

  • Write in Markdown, with a formatting bar and a preview.
  • Shows a character count for notes and a word count for articles as you type.
  • A post with a title is sent as an article. A post without one is a note.
  • Also supports photo posts, replies, likes, reposts, bookmarks and RSVPs, with a field for the URL you're responding to.
  • Uploads images to your site's media endpoint and asks you to describe each one as you add it, so posts go out with alt text.
  • An optional summary field, for sites that show an excerpt in listings or feeds.
  • Suggests categories from the tags your site already uses (q=category).
  • Publishes posts live or as drafts (post-status).
  • Lets you tick syndication targets your site offers (q=syndicate-to) for one post, or set them as the account's default. OutPost only sends syndication targets when a post is first published, so editing a post later doesn't syndicate it a second time.

Editing what you've published

  • Opens a published post for editing by asking your site for its source (q=source), then sends the changes back as a Micropub update.
  • Deletes posts with a Micropub delete.
  • Edit by URL: paste the address of any post on your site and edit it, whether or not you wrote it in OutPost.
  • Shows your posts in a list with their type (note, article, photo, reply, bookmark), publish date and tags, and keeps drafts on a separate tab. If your server can list posts over Micropub, OutPost loads them 50 at a time. If not, it reads the site's Atom or RSS feed and adds the posts and drafts made from OutPost.

More than one site

  • Sign in to as many sites as you like. The Mac app lists them in a sidebar, next to a sortable table of posts. On iOS you switch between them from the toolbar.
  • Settings are per site: the content format to send (Markdown source, Markdown converted to HTML, plain text or HTML), which blog to post to on hosts that run several (mp-destination), and the default syndication targets.
  • Shows what your server reported from q=config, so you can see what OutPost is working with.

Screenshots

IndieAuth

OutPost's client ID is https://jimmitchell.dev/outpost/. That page carries h-app markup and a <link rel="redirect_uri"> for the app's custom-scheme callback (outpost://auth/callback). Your authorization server has to fetch that page to accept the request, because the callback doesn't share an origin with the client ID.

OutPost uses PKCE where your server supports it, and refreshes tokens when the server issues refresh tokens.

It asks for the scopes create, update, delete, media and profile. The profile scope is only used to show your name and photo in the app.

Requirements

OutPost needs a website with a Micropub endpoint. If your site doesn't have one, OutPost has nowhere to publish. Signing in with IndieAuth is recommended, but a token your server issues itself also works (see below).

Works with

OutPost should work with any site that has a Micropub endpoint. Sites without IndieAuth can still sign in by entering their Micropub endpoint and an access token issued by the server. OutPost can't refresh a token entered this way, so it has to be replaced when it expires.

Platforms marked Confirmed have been tested with OutPost. The rest support the specs and are expected to work. If you've tried OutPost with one of them, please add what you found.

Platform Tested with OutPost IndieAuth Micropub Type
Clodd CMS Confirmed Yes Yes Self-hosted, open source
Micro.blog Confirmed Yes Yes Hosted
Pika Confirmed (Micropub; some Pika editor features may not carry over) No Yes Hosted
microblog.pub Expected Yes Yes Self-hosted, open source
Known Expected Yes Yes Self-hosted, open source
GoBlog Expected Yes Yes Self-hosted, open source
Indiekit Expected Yes Yes Self-hosted, open source
Pagecord Expected Yes Yes Hosted
WordPress Expected Yes (plugin) Yes (plugin) Self-hosted, open source, hosted
Drupal 8+ Expected Yes (plugin) Yes (module) Self-hosted, open source
dobrado Expected No Yes Self-hosted, open source
Hugo Expected No Yes (via nanopub) Self-hosted, open source
Blot Expected No Yes (via Blotpub) Hosted
Neonblog Expected Yes (RelMeAuth) Yes Self-hosted, open source; no longer developed

Privacy

OutPost has no server, no analytics and no tracking, and nothing syncs to iCloud. The only network request the Mac app makes beyond your own sites is Sparkle's update check against jimmitchell.dev.

IndieWeb Examples

See Also