Technology

Built 100% native for iOS

Wallet Projector is written entirely in Swift: a native SwiftUI interface, with account, persistence and cloud sync powered by Supabase.

Swift + SwiftUI

Native declarative interface for iOS, with tab navigation and reactive forms.

Supabase

Cloud database, email/password authentication and Realtime subscriptions for accounts, expenses, fixed payments/income and settings, protected with Row Level Security.

Offline-first sync

A local JSON cache and a pending-changes queue keep the app usable without a connection; it syncs automatically as soon as the network returns.

LocalAuthentication

Face ID / Touch ID for quick sign-in and to protect the visibility of the recorded income.

WidgetKit

Home Screen widget (small, medium and large) to add an expense or deposit, or open Summary and Fixed, without opening the app.

UserNotifications

Local notifications scheduled for each upcoming pay period.

String Catalogs

Full localization in Spanish and English with real-time language switching.

Data architecture

Six models synced with Supabase power all of the app's logic.

Account

An account or card. Groups its own expenses and calculates its outstanding balance up to a given payday.

Expense

An expense or deposit (negative amount). Supports splitting across several pay periods and links to deposits that settled it.

FixedPayment

A recurring per-period payment (rent, car, etc.) that can be skipped for specific periods.

ExtraIncome

Additional income that applies to a single pay period, including the surplus carried over automatically.

FixedIncome

A recurring income source in addition to salary, applied every pay period.

AppSettings

Salary, reference payday, privacy and language preferences, and the record of already-settled pay periods.

About this site

This showcase site is independent of the app: it doesn't reimplement its functionality, only documents it. It's built with ASP.NET MVC 5 (.NET Framework) in C# and Bootstrap 5.3, meant to be opened directly in Visual Studio 2022.

ASP.NET MVC 5

Controllers, Razor views and models in C#, on .NET Framework 4.8.

Bootstrap 5.3

Grid system, components and utilities, with custom styles on top of the framework.