A native Mac app

The complete toolbox for iOS and macOS developers.

Diagnose signing, renew certificates, switch Xcode versions, preview Swift, analyze SwiftUI views, follow your releases, and hear about expiries before they happen. Seven tools, one native Mac app.

Every tool free for 14 days. Signing and Certificates stay free forever.

Sindri’s Overview: one card per tool. Signing shows a push environment mismatch, Xcode shows three installed versions with 27.1 active, and Releases shows one build being processed.
Sindri’s Overview: one card per tool. Signing shows a push environment mismatch, Xcode shows three installed versions with 27.1 active, and Releases shows one build being processed.

Pricing

Every tool free for 14 days. Then €14.99, once.

Try all seven tools first. No subscription starts when the trial ends: keep the free tools, or buy Sindri Pro if you want the rest.

  1. Days 1 to 14

    Try every feature, including Pro.

  2. After your trial

    Signing and Certificates stay free forever.

  3. Whenever you’re ready

    Get Sindri Pro for €14.99 — a one-time purchase, for up to 3 Macs.

Sindri Pro

€14.99

One-time purchase · No subscription

One license for up to 3 Macs

  • Everything in Free
  • Xcodes
  • Swift Preview
  • SwiftUI Analyzer
  • Releases
  • Reminders

Demo

The whole app in 48 seconds

A walk through every tool, recorded in Sindri’s demo mode: the names and numbers on screen are fictional.

Features

Seven tools, one window

Each one answers a question you would otherwise spend twenty minutes on.

Free

Signing

Why won’t this project sign?

Point Sindri at a project and it checks the whole chain: expiring or revoked certificates, missing private keys, and profiles that don’t match the certificate, the device or the entitlements. Each finding says what is wrong and where.

  • The entitlements as a tree, or the raw values
  • Checked against the Developer portal
  • The certificate chain, tier by tier
The Signing screen for a project: one critical finding, a push environment mismatch between the entitlements and the provisioning profile, above two healthy checks and the certificate chain. The Signing screen for a project: one critical finding, a push environment mismatch between the entitlements and the provisioning profile, above two healthy checks and the certificate chain.
Free

Certificates

What is about to expire?

Every signing certificate in your keychain with its expiry, whether its private key is there, the profiles that use it, and whether the portal still lists it. Renew one in a click: a new key and certificate, and the affected profiles created again.

  • Nothing is renewed, revoked or deleted without your confirmation
  • Every change is written to an audit log
The Certificates screen: four certificates from the keychain with their team, keychain status and days left; one expires in 12 days and one has expired. The Certificates screen: four certificates from the keychain with their team, keychain status and days left; one expires in 12 days and one has expired.
Pro

SwiftUI Analyzer

Why does this view re-render?

Paste a view or drop its files. Sindri draws the hierarchy as a graph with its state dependencies and re-render risk, scores it out of 100 across six categories, and shows each issue with its fix as a diff.

SwiftUI Analyzer: a score of 69 out of 100 with six category scores, the view graph from ProductListView down to its children with state dependencies as dashed lines, and an inspector on the selected view. SwiftUI Analyzer: a score of 69 out of 100 with six category scores, the view graph from ProductListView down to its children with state dependencies as dashed lines, and an inspector on the selected view.

Local first

Analyze parses your files with SwiftSyntax and runs Sindri’s rules on your Mac: ForEach identity, non-lazy stacks, AnyView, objects created in a body. Instant, and nothing is sent.

An AI agent, when you ask

Deep analysis sends the files you chose to Codex, Claude or Gemini with your own API key. With Claude, the cost is estimated before anything leaves.

Grounded in your source

The agent’s answer has to follow a strict contract, and the views and line numbers in the graph still come from your code, not from the model.

Swift Preview: a SwiftUI view’s code on the left and the view rendered in an iPhone frame on the right, with the build time in the status bar. Swift Preview: a SwiftUI view’s code on the left and the view rendered in an iPhone frame on the right, with the build time in the status bar.

Swift Preview Pro

A scratchpad that compiles.

A SwiftUI view rendered next to its code in a device frame, in light and dark, or a Swift program next to its output. It builds with your installed toolchain and runs in its own process, so a crash never reaches the app.

The Xcodes screen: installed Xcode versions with the active one marked, and their disk usage. The Xcodes screen: installed Xcode versions with the active one marked, and their disk usage.

Xcodes Pro

Which Xcode is this, again?

The versions installed, the active command line tools, simulator runtimes and what they cost in disk space. Install any Xcode release, switch between them, and uninstall one to the Trash.

The Releases screen: three apps, and for the selected one each recent build on a five-step line from Uploaded to On the App Store. The Releases screen: three apps, and for the selected one each recent build on a five-step line from Uploaded to On the App Store.

Releases Pro

Where is build 412?

Your team’s apps and where each build stands, step by step: uploaded, processing, TestFlight, App Review, on the App Store.

The Reminders screen: expiry alerts switched on, the reminder windows, and the history of signing changes. The Reminders screen: expiry alerts switched on, the reminder windows, and the history of signing changes.

Reminders Pro

Before it expires, not after.

Local notifications ahead of certificate and profile expiry, and the log of everything Sindri changed on your behalf.

Screenshots

In light, tooIn dark, too

Sindri follows your Mac’s appearance. These are the app’s own captures, with demo data.

Why Sindri

Built the way you would want a tool near your keychain built

Nothing is invented
What can’t be read is reported as unavailable. Sindri never shows a placeholder where real data should be.
It reads by default
The only writes are the ones you confirm, each with a summary of what it will change, each recorded in the audit log.
Secrets stay in the Keychain
Your App Store Connect key, license key and AI provider keys live in the macOS Keychain and are never logged.
No account, no backend
Requests go to Apple with your own credentials, and to Lemon Squeezy for licensing. Deep analysis is the one exception, and only when you ask for it.

FAQ

Questions, answered plainly

What does Sindri cost?

Every tool is free for the first 14 days. After that, Signing and Certificates stay free, and Sindri Pro unlocks Xcodes, Swift Preview, SwiftUI Analyzer, Releases and Reminders: a one-time purchase of €14.99, for up to 3 Macs. There is no subscription. After buying, open Sindri › Activate and paste the license key from your receipt email.

Can I try Pro before buying?

Yes. The 14-day trial of every Pro tool starts when you choose it in the app, not at install, and runs once per Mac. When it ends, Signing and Certificates stay free and the Pro tools wait for a license.

What do I need to run it?

A Mac with macOS 15 or later, Apple silicon and Intel. Swift Preview builds with the Xcode toolchain installed on your Mac. Releases and the Developer portal checks use an App Store Connect API key from your own team. The app is in English and French.

What leaves my Mac?

There is no Sindri account and no Sindri server. Requests go to Apple with your own credentials, and to Lemon Squeezy to check your license. SwiftUI Analyzer’s local analysis sends nothing. Its deep analysis, when you ask for it, sends the files you chose to the AI provider you picked, with your own key, after a notice the first time.

Do I need an AI key for SwiftUI Analyzer?

No. Analyze runs locally with Sindri’s own rules. A key from OpenAI, Anthropic or Google is only needed for deep analysis, and it stays in your Keychain.

Will Sindri change my certificates or profiles?

Only when you ask. It reads by default; deleting a certificate from the keychain or renewing one is confirmed first with a summary of what will change, then recorded in the audit log.

Can I use one license on several Macs?

Yes. One Sindri Pro license activates up to 3 Macs, for example your desktop, your laptop and a build machine.

How do I install it?

Download the DMG, open it and drag Sindri to Applications. The app is signed with a Developer ID and notarized by Apple.

How do updates work?

New versions are published on the download page. Download the latest DMG and replace the app; your license and settings stay in place.

Try every tool for 14 days.

Then keep Signing and Certificates for free, or unlock everything for €14.99, once, on up to 3 Macs.

macOS 15 or later · Apple silicon and Intel