Privacy-first iOS app to maintain friendships through gentle reminders and relationship tracking.
Version: 0.3.6 (Build 12) | Status: Pre-release Beta
Never lose track of the people who matter. Keep In Touch helps you maintain friendships by:
- Tracking when you last connected with friends and family
- Organizing contacts by frequency (Weekly, Bi-Weekly, Monthly, Quarterly)
- Sending gentle reminders when it's time to reconnect
- Keeping everything private — all data stays on your device
V0.3.6 adds VoiceOver accessibility labels to all picker and editor sheets, replaces hardcoded font sizes with Dynamic Type text styles, and introduces CSV export for spreadsheet use. Internally, the terminology refactor renames "Groups" to "Cadences" and "Tags" to "Groups" with full backward compatibility for existing exports. A bug fix restores Due Soon contacts to the Home View. 330 tests passing.
Up next: App Store submission. See open issues and release history for details.
Core
- Tab bar navigation with Home, Contacts, and Settings tabs
- Home screen with status summary cards, sticky sections, and floating search
- A-Z Contacts tab with section index and search
- Full-screen contact detail with hero section, action buttons, and timeline history
- Connection logging with method tracking (Text, Call, In Person, Email)
- Frequency-based contact groups with configurable cadences
- Custom due dates per contact (overrides group frequency)
- Contact photos from iOS Contacts with colorful initials fallback
- Birthday display from address book with manual override
- Birthday push notifications with per-person toggle and grouped alerts
- Notification privacy mode (hide contact names on lock screen)
- Foreground notification delivery (in-app banner)
- Snooze and pause tracking per contact
- Multiple groups per contact displayed on contact cards
- "Link to Contact" recovery for contacts unavailable in address book
- Fresh Start auto-prompt for inactive or overwhelmed users
- "Next Time" notes for conversation context
- Local notifications with quick-log actions
- Half-height picker sheets for dates, times, frequency, and groups
- Full connection history with edit and delete
- JSON import and export with deduplication and conflict resolution
- CSV export for spreadsheet use
- Centralized design system with adaptive dark/light mode tokens
- Portrait-only orientation on iPhone
Privacy & Security
- All data stored locally on device (Core Data, encrypted at rest by iOS)
- No cloud sync, no advertising, no cross-app tracking
- Anonymous usage analytics via TelemetryDeck (opt-out in Settings)
- Read-only Contacts access (fetched on-demand, never stored externally)
- No external dependencies — built entirely with Apple frameworks
- Privacy policy
iOS 17+ · Swift · SwiftUI · Core Data · Clean Architecture
No external dependencies beyond TelemetryDeck for anonymous analytics. Built with SwiftUI, Core Data, Contacts, UserNotifications, and BackgroundTasks.
TestFlight: v0.3.6 (Build 12) available. Join via TestFlight.
Developers: Clone the repo, open StayInTouch/StayInTouch.xcodeproj in Xcode 15+, and run. Grant Contacts and Notifications permissions when prompted.
All rights reserved — see LICENSE.
Built with the assistance of AI tools.