Skip to content

mfrh89/moneyboy-ios

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Moneyboy iOS

Native iOS 26 SwiftUI app for personal finance tracking. Uses the same Firebase backend as the Moneyboy PWA.

Requirements

  • Xcode 26+
  • iOS 26+ deployment target
  • Firebase project (same as PWA: moneyboy-2f088)

Setup

  1. Clone the repo
  2. Add GoogleService-Info.plist to Moneyboy/ (download from Firebase Console)
  3. Open Moneyboy.xcodeproj in Xcode
  4. Add Firebase iOS SDK via SPM: https://github.com/firebase/firebase-ios-sdk
    • Products: FirebaseAuth, FirebaseFirestore, FirebaseMessaging
  5. Build & run

Architecture

  • Models: FinanceItem, ScenarioData, FinanceSummary — match PWA Firestore schema exactly
  • Services: AuthService, FirestoreService, ScenarioService, NotificationService
  • ViewModels: AppViewModel, WhatIfViewModel, SettingsViewModel
  • Views: SwiftUI views using iOS 26 Liquid Glass (.glassEffect())

Item Lifecycle

  • Hide: short trailing swipe → toggles excluded. Item stays visible but is greyed out and excluded from totals.
  • Delete: full trailing swipe (iOS Mail style) → moves the item to Recently Deleted (deletedAt timestamp set). Active lists, totals, and subscription reminders ignore deleted items immediately.
  • Restore / Purge: Settings → Recently Deleted. Leading swipe restores, trailing swipe deletes permanently. Items auto-purge after 30 days; the cutoff runs on app launch.

Firestore Paths

Same paths as PWA:

users/{uid}/items/{itemId}          — FinanceItem documents
users/{uid}/scenarios/whatif        — ScenarioData document
users/{uid}/fcmTokens/{token}       — FCM token documents

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages