A monthly net-worth check-up app for families — macOS-first, with iPhone and iPad builds from source.
Private by design · Multi-currency · Apple-native
The name comes from mountaineering — a cairn is a stack of stones left as a trail marker. Each monthly snapshot in the app is one more stone on your family's financial trail.
Cairn gives the family CFO a single, calm place to answer one question every month: "What do we own, what is it worth, and how is it trending?" No transactions to categorize, no API keys to configure, no cloud account to sign into.
Create a profile for each family member — group their accounts under them, and switch between a per-member view and an aggregated "All family" view with a single tap.
One account can hold positions in CNY, USD, HKD, AUD, … at the same time. Cairn fetches live FX rates from the ECB (Frankfurter API, no API key) and converts everything to your chosen home currency on the fly. Works offline with cached rates.
The core workflow. One screen, one row per holding, last month's values pre-filled —
edit only what changed, Save all, done. Designed to take under 3 minutes a month.
- Live running total in your home currency
Fill from lastfor unchanged holdings- Atomic save — all rows commit together or none do
- Backfill or edit any past month
A Swift Charts curve of total family net worth over 6M / 12M / All time, with breakdowns by account kind and member, plus captured monthly snapshot detail. The Dashboard can overlay cumulative physical-asset value on the same chart. Hover or long-press a captured point to inspect the month.
Cash, brokerage, and similar financial accounts. An account is not pinned to a single currency — add as many single-currency holdings underneath as you need.
Track real estate, vehicles, devices, and other tangible assets in their own tab, with a cumulative value chart that lines up month-by-month with your financial trend so you can see total household value at a glance.
Optional local notification on the 1st of each month: "Time to update your assets." No push servers, no account required.
Every string goes through Apple's String Catalog from day one, so currencies, dates, and pluralization all follow your locale. Override the app language independently of the system if you like.
- Your data never leaves your Mac. Storage is a local-only SwiftData store in the app sandbox. CloudKit sync is intentionally off.
- The only network call is fetching public FX rates — no user data, no analytics, no ad SDKs, no account system.
- Portable, human-readable backups. Export your whole store to a single
.cairnJSON file from Settings → Backup → Export. You can also export captured monthly snapshots as CSV. Drop either file in iCloud Drive, Dropbox, or a Git repo to carry between Macs, or just to keep a personal archive.
Cairn is open-source and has no Apple Developer account behind it, so there are no signed App Store builds.
- macOS — grab the latest
Cairn-x.y.z.dmgfrom the Releases page, drag it to/Applications. The first launch needsControl-click → Openbecause the build is ad-hoc signed. - iOS / iPadOS — open the project in Xcode, sign it with your free Personal Team, and run from source. Packaged releases are macOS-only for now. See the Development Guide.
- Build from source — see the Development Guide.
System requirements: macOS 14 Sonoma or iOS / iPadOS 17 or later.
Cairn is early-stage. macOS is the primary distribution target; iOS / iPadOS are kept buildable from the same SwiftUI codebase but do not have packaged releases yet.
- v1 — Members (with avatars) · Accounts · Holdings · Monthly snapshots · FX · Trend chart · Physical assets · Backup/import · CSV snapshot export · iOS / iPadOS builds from source
- v1.1 — Face ID / Touch ID lock
- v2+ — Depreciation rules, quote API, Widgets, Siri Shortcuts
Full spec: PRD.md.
- Product spec (PRD)
- Design notes
- Development guide — build, project structure, localization, contributing
Pull requests welcome. Start with the Development Guide for the build workflow, localization rules, and commit conventions.