FinTrack is a focused UIKit app for recording everyday income and expenses. It provides a clear running balance, a persistent transaction history, flexible categories, and a native interface supporting iOS 26 and iOS 27.
Project status: Currently paused. The repository remains buildable and documented, but no active feature development is planned.
- Records income and expense transactions with an amount, category, and date
- Persists transaction history and custom categories between launches
- Shows the current balance, income, expenses, and recent activity at a glance
- Supports editing, swipe-to-delete, and confirmed bulk deletion
- Includes built-in categories and user-created categories
- Formats values in US dollars or euros
- Follows the system appearance by default, with optional Light and Dark modes
- Keeps all finance data locally on the device
FinTrack uses standard UIKit navigation, tab bars, menus, sheets, alerts, SF Symbols, semantic colours, and Dynamic Type. Liquid Glass is reserved for the primary transaction actions and system navigation layer so the content stays clear and familiar.
The new Rising Track identity is supplied as an adaptive icon family:
- Default/light: translucent blue and teal glass on a luminous background
- Dark: a higher-luminance mark on deep midnight navy
- Tinted: a monochrome version for iOS tinted icon appearances
See Design and accessibility for the design decisions and Human Interface Guidelines checklist.
- macOS with Xcode 27 for iOS 27 development and verification
- iOS 26 or later (the minimum deployment target remains iOS 26.0)
-
Clone the repository:
git clone https://github.com/ihormelashchenko/FinTrack.git cd FinTrack -
Open
FinTrack/FinTrack.xcodeprojin Xcode. -
Select the
FinTrackscheme and an iPhone simulator or connected device. -
Build and run the app.
The project has no third-party dependencies or account setup.
Build for the simulator:
xcodebuild \
-project FinTrack/FinTrack.xcodeproj \
-scheme FinTrack \
-configuration Debug \
-destination 'generic/platform=iOS Simulator' \
CODE_SIGNING_ALLOWED=NO \
buildRun the unit and interface tests on both an iOS 26 and an iOS 27 simulator. List installed devices and choose a device identifier for each runtime:
xcrun simctl list devices available
xcodebuild \
-project FinTrack/FinTrack.xcodeproj \
-scheme FinTrack \
-destination 'platform=iOS Simulator,id=<SIMULATOR-UUID>' \
-parallel-testing-enabled NO \
-derivedDataPath /tmp/fintrack-verification \
-resultBundlePath '/tmp/fintrack-tests-<OS-VERSION>.xcresult' \
CODE_SIGNING_ALLOWED=NO \
testReplace the placeholders and use a fresh result bundle path for each run. Install
missing runtimes through Xcode Settings > Components. For release verification,
repeat the build with -configuration Release and also build with
-destination 'generic/platform=iOS' for devices.
The shared scheme runs four finance-store tests, one live text-size layout
regression test, and two end-to-end interface tests. GitHub Actions builds using
the default Xcode on its macos-26 runner; this does not by itself establish
iOS 27 runtime compatibility.
See iOS compatibility verification for the tested toolchain, results, and remaining checks.
FinTrack/
├── branding/ # Source logo appearances
├── docs/
│ ├── design-and-accessibility.md
│ └── screenshots/
└── FinTrack/
├── FinTrack.xcodeproj/
├── FinTrack/ # UIKit app and adaptive assets
├── FinTrackTests/ # Finance model and persistence tests
└── FinTrackUITests/ # Core user-flow tests
Created by Ihor Melashchenko.






