Projects

WiseBudgeter

macOS app for personal finance management, syncing transactions from Wise and Monobank.

20 March 2025
FinancemacOS

WiseBudgeter — macOS app for personal finance management. Track expenses and income across multiple currencies, sync transactions from Wise and Monobank, plan monthly budgets per category, and visualize spending with charts and analytics.

Technical info:

  • Written in Swift, SwiftUI with NavigationSplitView three-column layout (~64 source files)
  • SwiftData persistence — 6 models (Expense, Income, ExpenseCategory, IncomeCategory, BudgetPlan, BudgetPlanItem) with relationship cascades and predicate-based filtering
  • Dual bank integrationWise and Monobank API clients with OAuth tokens stored in Keychain, automatic transaction import with deduplication via externalId
  • Multi-currency support — foreign exchange tracking with base currency conversion, rate caching via ExchangeRateService with 24-hour TTL
  • Charts framework for category-based spending visualization and budget vs. actual progress tracking
  • CSV import/export — parsers for Wise, Monobank, and generic formats with MCC code mapping and merchant keyword auto-categorization
  • Observable pattern with @Observable macro for reactive services, async/await concurrency, OSLog structured logging
  • Zero third-party dependencies — built entirely with native Apple frameworks
  • Swift Testing framework with in-memory ModelContainer for isolated unit tests
  • Deployment target: macOS 15.2+
WiseBudget on Mac — your financial dashboard
1 / 8