Code
SatStackr.app
26. März 2026
Überblick
SatStackr ist eine native macOS-App zur Verwaltung und Analyse von Bitcoin-Käufen über mehrere Portfolios hinweg. Die App wurde von Grund auf mit einem Fokus auf Datenschutz entwickelt: alle sensiblen Transaktionsdaten werden lokal per AES-256-GCM verschlüsselt gespeichert — kein Cloud-Backend, keine Analyse-Dienste.
Status: Aktiv in Entwicklung · macOS 26.2+ · satstackr.app
Features
Portfolioverwaltung
- Mehrere benannte Portfolios in einem Fenster, per-Window-Auswahl
- Sechs Transaktionstypen: Kauf, Verkauf, Einbuchen, Ausbuchen, Konsolidierung, Transfer
- Multi-Currency: Transaktionen in EUR, USD, CHF, GBP, JPY mit automatischer EUR-Umrechnung über die Frankfurter API
Analyse & Charts
- Historisches Portfolio-Chart (Swift Charts) mit investiertem Kapital vs. aktuellem Wert
- Adaptive X-Achse: Jahres-Labels (≥3 Jahre) oder Quartals-Labels mit mittigem Versatz
- Hover-Tooltip mit Datum, Portfoliowert und investiertem Kapital
- Monatliches Performance-Heatmap — Rendite pro Monat in Prozent, farbkodiert nach Intensität
- Zwei Modi: Portfolio-Performance oder reiner BTC-Kurs
- 200-Tage-Gleitender Durchschnitt (MA200) aus lokalem OHLC-Cache (Bitstamp)
- Sparplan-Simulator: Berechnet hypothetische DCA-Ergebnisse (monatlich, wöchentlich, individuell)
Steuer & Reporting
- FIFO-Kalkulator für realisierte Gewinne/Verluste mit konfigurierbaren Haltefristen
- Jahresbericht als PDF (Core Graphics, A4) mit Transaktionstabelle und Zusammenfassung
- Konfigurierbare Steuerregeln für verschiedene Jurisdiktionen (Halteperioden, Freibeträge)
Import & Export
- CSV-Import von Exchanges: BSDEX, Relai, Bison, Pocket — mit Duplikat-Erkennung
- Verschlüsseltes Backup-Format (
.satstackr) — AES-256-GCM mit Keychain-Schlüssel - iCloud Keychain Sync für den Verschlüsselungsschlüssel (Fallback auf lokale Keychain)
Widget
- macOS Widget Extension mit BTC-Preis, 24h-Chart und aktueller Block-Höhe
- Duale Preisquellen: CoinGecko primär, Kraken als Fallback
- Dual Chart-Quellen: CoinGecko → Bitstamp-Fallback
- 10-Minuten-Cache via App Group UserDefaults, Block-Höhe immer live

UX-Details
- Touch ID / Passwort-Gate beim App-Start (LocalAuthentication)
- Sichtschutz: Shift+Klick auf BTC-Preis blendet alle Beträge aus
- Satoshi-Ansicht: Shift+Klick wechselt zwischen BTC und Sats
- Bitcoin Whitepaper: In-App PDF-Viewer (PDFKit, gecacht lokal)
- Konami-Code Easter Egg mit Konfetti-Animation
- Vollständig lokalisiert in 16 Sprachen: DE, EN, FR, ES, RU, IT, PT, NL, PL, CS, TR, SV, UK, KO, JA, ZH-Hans
Technischer Stack
| Bereich | Technologie |
|---|---|
| Sprache | Swift 5.0 |
| UI | SwiftUI |
| Persistenz | SwiftData |
| Kryptografie | CryptoKit (AES-256-GCM) |
| Charts | Swift Charts |
| In-App Purchase | StoreKit 2 |
| Ziel-OS | macOS 26.2+ |
| Build | Xcode 26.2 |
| Dependencies | keine (nur Apple Frameworks) |
Architektur: Kein externes Framework, kein Backend. Alle Daten bleiben auf dem Gerät. Preis-APIs (CoinGecko, Bitstamp, Frankfurter) werden nur für Live-Daten und historische Kurse kontaktiert.
Sicherheit: Sensitive Felder (amountBTC, amountGross, currency, etc.) werden als verschlüsselte Data-Blobs in SwiftData gespeichert. Der AES-Schlüssel liegt ausschließlich in der macOS Keychain (iCloud-synchronisiert). Unverschlüsselt bleiben nur Sortier-/Filter-Felder (date, type, portfolioName).
Projektstand
- Gestartet: Februar 2026
- Commits: ~208 (Stand März 2026)
- Sprachen: 16 (vollständig lokalisiert via Xcode String Catalog)
- Monetarisierung: Freemium — kostenlos bis 200 Transaktionen, Pro-Upgrade via StoreKit 2 (Einmalkauf)
- Vertrieb: Mac App Store (geplant) / Direktvertrieb
Website
Statische Landing Page und mehrsprachige Hilfe-Dokumentation unter satstackr.app — kein Tracking, keine Cookies, kein Server-Side-Code.
Schreib mir, wenn du diesen Screen gesehen hast ;)