← Back
LiveiOS · watchOS · Widgets · CloudKit · App Store

PayCheck Budget

The budget app that says no when 'yes' would leave the family with $0.

A native iOS budgeting app for working families paid weekly, bi-weekly, semi-monthly, or monthly. Ships with a watchOS companion, widget extension, Siri-powered voice expense logging, and a financial literacy hub. The 'Can I Afford This?' flow advises on when to make big purchases.

Origin

October 2025: a financial reset, a baby on the way, and a family tightening up around its money. The first app answered a question every household quietly asks together — how much do we have left, and what's safe to spend? Not a fintech aggregator, not a spreadsheet replacement — a protective layer between intent and overdraft, designed for the way working families actually get paid.

What it does

  • Can I Afford This?

    The headline feature. Refuses to greenlight a purchase that would leave the family with $0 for the rest of the pay period — even if the math says yes. Daily-minimum safety buffer + percentage buffer, whichever is larger. Five response tiers from 'cannot afford' to 'very comfortable.'

  • Multi-cadence paycheck model

    First-class support for weekly, bi-weekly, semi-monthly, and monthly pay cadences. Bills auto-assigned to the right pay period based on actual configured pay dates — not hardcoded calendar splits. Started semi-monthly (the founder's own cadence); expanded to all four in the April 2026 update so every working-family cadence fits.

  • Siri voice expense logging

    App Intents-based: “Hey Siri, log an expense in PayCheck Budget.” Saves directly to App Group storage, auto-refreshes the app on foreground so entries appear instantly.

  • watchOS + 5 complication styles

    Liquid Glass-styled budget glance, paycheck split, upcoming bills. Color-coded green/yellow/orange/red by buffer health. Quick expense entry from the wrist.

  • CloudKit family sharing

    Spouses see the same numbers in real time without a BudgetCo cloud account. Multi-profile manager for households running parallel budgets.

  • OCR budget import

    Take a screenshot of an existing budget spreadsheet. The Vision framework extracts bills and amounts automatically, with a preview screen before importing.

  • 25-screen financial literacy hub

    A second product hidden inside the app: foundations, debt + credit, income + investing, big purchases, badges, quizzes. Includes a Bankruptcy Guide written from lived experience.

Engineering

  • The Affordability Safety Buffer (the family-protection thesis, in code)

    The original affordability check was just arithmetic: available − cost ≥ 0. The fix introduced a two-pronged buffer — daily minimum ($20/day × days-to-payday) and percentage buffer (15% of remaining budget) — using whichever is larger. Five new response tiers replaced the binary yes/no. The UI surfaces the buffer explicitly so the user can see why a 'yes' might still be a bad idea. This is the project's thesis encoded as a feature: protect the family from the math saying yes.

  • The Siri data-flow root cause

    Symptom: Siri said 'logged to Paycheck 1' but the expense never appeared in the app. Two orthogonal bugs masquerading as one — ExpensesStore only loaded data once at startup, and LogExpenseIntent used hardcoded paycheck cutoffs that didn't match the user's actual configured pay dates. Fix landed a foreground-reload notification observer plus a dynamic paycheck assignment that reads the user's pay dates. Centralized key constants in SharedUserDefaultsKeys to prevent string-typo drift across iOS / Widget / Watch / Siri.

  • Live App Store crash recovery

    Feb 22, 2026: 'Fix critical crashes reported in App Store.' The app was already live with paying users when the crashes surfaced. Same-week follow-ups shipped a household-income summary, duplicate-bill dedup, forecast improvements, and a widget/UserDefaults key alignment fix.

Stack

  • Swift
  • SwiftUI
  • SwiftData
  • CloudKit
  • App Intents (Siri)
  • Vision (OCR)
  • watchOS
  • Widget Extension
  • StoreKit 2