An iOS app for viewing multiple timezones at a glance — the iPhone companion to TimeZonesMacOS.

Most timezone apps just show you the current time in different cities. That’s not very useful — you can Google that. What you actually need is to answer questions like “if I schedule a call for 3pm my time, what time is that for them?” or “what time was it in Tokyo when that incident fired at 2am?” This app lets you drag a time ruler and see all your cities update simultaneously, so you can scrub forward or backward through the day and instantly see the answer.
It’s also designed to be dead simple to read. Day and night hours are visually distinct, date changes are color-coded, and hour deltas are shown relative to whichever city you tap — no mental math required.
-6h, +1h)com.matthewtse.timezones2TMRXZB6JT754SDLX2C5 (Admin role — required for cloud-signed distribution certificates)c39330f9-3f5e-44d6-abe8-5e3a76d7e014~/.appstoreconnect/private_keys/AuthKey_754SDLX2C5.p8The Admin role on the API key is what lets xcodebuild -allowProvisioningUpdates create/renew the iOS Distribution certificate without manual Xcode steps. A non-Admin key fails with “Cloud signing permission error / No signing certificate iOS Distribution found”.
TimeZonesiPhoneApp.xcodeproj/project.pbxproj — both Debug and Release configs:
MARKETING_VERSION (e.g. 1.2 → 1.3)CURRENT_PROJECT_VERSION — must increase every upload (App Store Connect rejects duplicates)rm -rf build/TimeZonesiPhoneApp.xcarchive build/export
xcodebuild -project TimeZonesiPhoneApp.xcodeproj \
-scheme TimeZonesiPhoneApp -configuration Release \
-destination 'generic/platform=iOS' \
-archivePath build/TimeZonesiPhoneApp.xcarchive archive
ExportOptions.plist has destination: upload, so this single command both exports the IPA and uploads it to App Store Connect):
xcodebuild -exportArchive \
-archivePath build/TimeZonesiPhoneApp.xcarchive \
-exportOptionsPlist ExportOptions.plist \
-exportPath build/export \
-allowProvisioningUpdates \
-authenticationKeyPath ~/.appstoreconnect/private_keys/AuthKey_754SDLX2C5.p8 \
-authenticationKeyID 754SDLX2C5 \
-authenticationKeyIssuerID c39330f9-3f5e-44d6-abe8-5e3a76d7e014
git commit -am "Bump version to X.Y (build N)"
git tag vX.Y && git push origin main vX.Y
App Store Connect → Business → Agreements shows any agreement that isn’t Active, accept it first (FORBIDDEN.REQUIRED_AGREEMENTS_MISSING_OR_EXPIRED).App Store Connect → Business shows a red Digital Services Act banner, complete it before uploading.See PRIVACY_POLICY.md.