Pricing

$99, once, for every app you ever ship.

No subscription, no per-app fee, no seat count. You buy the kit once and use it in as many apps as you like, for as long as you like.

One file to configure. One command to ship. Every trap already documented.

$99 one-time

  • Use in unlimited apps, commercial or free
  • No subscription, no per-app fees, no account
  • Full source: readable, commented, yours to modify
  • Fixes and improvements to v1 included
Get Hawser · $99

Requires Apple's own Developer Program membership ($99/year, paid to Apple). Everyone shipping Mac apps pays that, kit or not.

What the $99 actually buys

Nothing here is proprietary. Every command is public, and the ten worst ones are written up on this site for free. What you are buying is knowing which ones matter before one of them costs you a release.

Building it yourself

23 Dead ends between a working app and a customer who can open it. We wrote each one down the day we hit it.
  • 10written up in full on this site, free: the ones that cost the most to find
  • 2notarization submissions rejected for problems that looked perfectly fine locally
  • 1trap we only found after shipping: our own release, cracked in three commands the next day

Starting from Hawser

61s Source to signed, notarised, stapled DMG. Warm run, measured across three cold installs.
  • 1file to configure: name, bundle id, team, versions, update feed
  • 1command to ship, with both notarization submissions included
  • 35points where the scripts stop and print the fix instead of a status code. Three of them by name, on the home page.

Measured July 2026 on a real machine and a real Developer account. Not projected, not "up to". The long version is the ten traps, free and complete.

The 61 seconds is the command, warm. Your first day is not 61 seconds, and pretending otherwise would be the first thing we got wrong: the first notarisation on a new account took us 31 minutes, and the whole distance from a Mac with no certificate to a notarised DMG took about an hour. The FAQ breaks that down.

Before you buy

There are no refunds, and here is the honest reason

You receive the complete source the moment you buy, and source code cannot be returned. That is why everything is laid out before you pay rather than after: the working sample you can verify on your own machine, the full box contents, measured numbers instead of promises, and the FAQ including what the kit deliberately does not do. If you are unsure, do not buy yet. The page is not going anywhere.

What you need on your side

What it does not cover

No sandboxed / Mac App Store variant; this is the outside-the-store pipeline. No CI templates: ship.sh runs on your machine, not in GitHub Actions. Swift and SwiftUI only, macOS 13+, no Objective-C skeleton and no iOS. The side-by-side version of this is on the home page, and the full list is in the FAQ, written plainly.

You are not locked into a payment provider

The kit ships a working Polar licence client, so you can sell on the day you buy. The provider is confined to LicenseClient.swift, 72 lines of code whose only job is one HTTP call. The 14-day offline grace, keychain storage, refund and revocation handling and the state machine behind them are provider-agnostic and never learn who answered. Pointing the kit at Stripe, Paddle, Lemon Squeezy or your own server is rewriting one function.

Get Hawser · $99