Privacy

WormaDock has no analytics, no account and no telemetry. This page lists every request it can make.

Network requests

Each one happens on the trigger named. The ones marked Background also repeat on their own, under the condition given there.

Polar (api.polar.sh)

Trigger: you enter a license key. Sent: the key, this Mac's model name, for example Mac15,3, and a SHA-256 hash of this Mac's hardware ID, the same hash the trial uses. Polar records the activation against your key and keeps the hash with it, so the activation works only on this Mac. Background: while a key is stored, it is checked each time WormaDock launches and again about once a week, sending the key, the activation id and the hash. Deactivate This Mac sends the same to free the slot. Polar is the merchant of record; its own privacy policy covers your purchase.

Trial server (wormadocktrial.worma.dev)

Trigger: you confirm the Start Trial alert. Sent: a SHA-256 hash of this Mac's hardware ID. Stored: that hash and the start date, so each Mac gets one trial. Answer: signed start and end dates. Background: while the trial runs, one confirmation at launch, and one if the Mac's clock looks set back. Rows are kept while trials are offered, because deleting one would reopen that Mac's trial; they contain nothing that names you. The server runs on Cloudflare Workers; Cloudflare keeps its own request logs, the request's IP address among them, for up to 7 days.

Updates (github.com)

Trigger: Check for Updates, or automatic checks if you allow them when WormaDock asks on its second launch. WormaDock fetches the update feed and the update itself from the WormaDock releases repository on GitHub, using Sparkle. The request identifies the app and its version; no system profile is sent. GitHub sees the request like any download. Background: once you allow automatic checks, Sparkle checks the feed on its schedule while WormaDock runs; decline and it checks only when you ask.

Weather (api.met.no)

Trigger: the Weather widget is in your Dock and either Location is allowed or a city is set. Sent to MET Norway: the coordinates rounded to two decimals (about 1 km), the app name and version, and a link to the WormaDock issues page as the contact MET requires. Background: while the widget is in the Dock, the forecast is fetched again on its own each time MET's answer expires. No API key, no account. Data is CC BY 4.0.

City lookup (Apple)

Trigger: Set City or Change City on the Weather widget. Sent: the text you typed, to Apple's MapKit geocoding, under Apple's privacy policy. WormaDock keeps the rounded coordinates and a city name from the answer; the text you typed is not stored.

Website icons

Trigger: you add a web link to the Dock. WormaDock fetches that site's icon (/apple-touch-icon.png, then /favicon.ico) once, without cookies, and keeps it on disk. The site sees one request from your Mac, as a browser visit would.

Links that open in your browser

Buy Pro, Manage License, the website, the issues page and MET's license page open in your browser. Those are browser visits, not app requests. Buy links carry a tag naming which button opened them, so sales can be counted by surface; nothing about you.

What stays on the Mac

  • Your setup: pinned items, widgets, profiles, options, in ~/Library/Application Support/WormaDockNative/config.json.
  • Your license key, activation id and trial token, in the login Keychain.
  • Apple's Dock settings as they were before WormaDock hid it, in WormaDock's preferences, until it restores them.
  • Cached website icons for links in the Dock.
  • Window previews are captured on this Mac and never written to disk.
  • Calendar events, Now Playing, battery, network and system readings are read locally for the widgets and never sent anywhere.

No analytics

WormaDock has no analytics, no usage statistics, no identifiers, no crash uploads and no account. The requests that run without a click are the ones marked Background above: the license check at launch and about weekly for a key you entered, the trial confirmation for a trial you started, update checks if you allowed them, and weather refreshes while the Weather widget is in the Dock.

Crash reports

macOS writes a crash report to your Mac when any app crashes. At launch, WormaDock looks for a report of its own build newer than the last one you handled and, if there is one, offers Report Crash on GitHub in its menu and in Settings > About.

Choosing it opens a public GitHub issue form in your browser, prefilled with the WormaDock version and your macOS version, and shows the report file in Finder so you can attach it yourself. Nothing is sent until you submit the issue. Dismiss hides the offer. macOS writes home folder paths in crash reports as /Users/USER.

Questions

Open an issue in the WormaDock releases repository.