Show HN: Corgina – Open-source pregnancy tracker I built for my wife (iOS 26)

3 weeks ago 2

An AI-powered iOS app for tracking pregnancy health, nutrition, and symptoms with privacy-first, on-device data storage.

⚠️ Note: Currently only compatible with iOS 26. Requires iPhone running iOS 26.0 or later.

Testflight link: https://testflight.apple.com/join/5HV3CJ7x

Short demo: https://youtube.com/shorts/tOFTKZYpN6A?si=3zC5Mllkp6Y-Q0MD

image
  • Natural language voice commands for logging food, water, vitamins, and symptoms
  • On-device speech recognition for privacy
  • AI-powered nutrition estimation using OpenAI GPT-4o
  • Example: "I ate tahini for lunch" → automatically logs at 12pm with nutritional data

📊 Comprehensive Health Tracking

  • Food Intake: Automatic calorie and macro estimation (protein, carbs, fat)
  • Hydration: Water intake tracking with customizable amounts
  • Vitamins & Supplements: Schedule and track prenatal vitamins
  • Symptoms: Log nausea, vomiting, and other pregnancy symptoms
  • PUQE Score: Track and monitor pregnancy-related nausea severity
  • 100% Private: All data stored locally on device
  • No Cloud Storage: Your health data never leaves your iPhone
  • Your Own API Key: Bring your own OpenAI API key for AI features
  • Complete Control: Delete any log entry with swipe or context menu
  • Liquid Glass UI components following Apple's latest design language
  • Compact pill interface for voice interactions
  • Quick-select time picker for editing log timestamps
  • Swipe-to-delete and context menus throughout
  • Customizable eating and drinking reminders
  • Badge notifications for missed meals
  • Configurable intervals (30 minutes to multiple hours)
  • iOS 26.0 or later (iOS 26 only at the moment)
  • iPhone (tested on iPhone 16 Pro)
  • Xcode 17+ (for building and installation)
  • OpenAI API key (for AI nutrition estimation and voice command processing)

Method 1: Using Xcode (Recommended)

  1. Install Xcode:

    • Download Xcode from the Mac App Store
    • Requires macOS with Xcode 17+
  2. Clone and Open:

    git clone https://github.com/benjaminshafii/corgi.git cd corgi/HydrationReminder open HydrationReminder.xcodeproj
  3. Configure Signing:

    • Select the project in Xcode
    • Go to "Signing & Capabilities"
    • Select your Apple ID team
    • Change Bundle Identifier to something unique (e.g., com.yourname.corgina)
  4. Add OpenAI API Key:

    • Launch the app
    • Go to More → Settings
    • Enter your OpenAI API key
    • Key is stored securely in iOS Keychain
  5. Connect iPhone:

    • Connect your iPhone via USB
    • Trust the computer if prompted
    • Enable Developer Mode: Settings > Privacy & Security > Developer Mode
  6. Install App:

    • Select your iPhone from the device list in Xcode
    • Click the "Run" button (▶️)
    • Trust the developer certificate on iPhone: Settings > General > VPN & Device Management
  1. Accept the health disclaimer
  2. Grant notification permissions for reminders
  3. Grant microphone permissions for voice commands
  4. Add your OpenAI API key in Settings
  • Food: "I ate a banana for breakfast"
  • Water: "Log 500ml of water"
  • Compound Meals: "I had chicken with rice and broccoli"
  • Vitamins: "Log prenatal vitamin"
  • Custom Vitamins: "Add vitamin D3, twice daily"
  • Symptoms: "I'm feeling nauseous, severity 7"
  • Tap the floating mic button to start voice recording
  • Or use the quick action buttons in the Dashboard
  • Edit timestamps by tapping the time on any log entry
  • Delete entries by swiping left or long-press for context menu
  • Platform: iOS 26.0+
  • Framework: SwiftUI with iOS 26 Liquid Glass design
  • Architecture: MVVM + Actor-based concurrency
  • AI: OpenAI GPT-4o for nutrition estimation and voice command parsing
  • Speech: On-device speech recognition (Speech framework)
  • Storage: UserDefaults + local file system (100% on-device)
  • Notifications: UserNotifications framework
HydrationReminder/ ├── CorginaApp.swift # App entry point ├── MainTabView.swift # Main tab navigation ├── DashboardView.swift # Home dashboard ├── LogLedgerView.swift # Log history view ├── VoiceLogManager.swift # Voice recording & AI processing ├── OpenAIManager.swift # OpenAI API integration ├── AsyncTaskManager.swift # Background nutrition fetching ├── LogsManager.swift # Log data management ├── NotificationManager.swift # Reminder scheduling ├── VoiceCompactPill.swift # iOS 26 voice UI component ├── TimeEditSheet.swift # Time picker with quick select └── docs/ # Best practices documentation
  • No Analytics: Zero tracking or analytics
  • No Cloud: All data stored locally
  • API Key Security: OpenAI key stored in iOS Keychain
  • On-Device Speech: Speech recognition happens on device
  • Optional AI: App works without OpenAI key (manual logging only)
  • Voice commands not working: Check microphone permissions in Settings
  • No nutrition data: Verify OpenAI API key in More → Settings
  • Notifications not working: Check Settings > Notifications > Corgina
  • App won't install: Ensure iPhone is in Developer Mode
  • Build errors: Check Bundle Identifier is unique and team is selected
  1. Get an API key from platform.openai.com
  2. Open Corgina app → More → Settings
  3. Enter your API key
  4. Key is securely stored in iOS Keychain

Note: The app uses GPT-4o for:

  • Food nutrition estimation (~$0.01 per food item)
  • Voice command parsing (~$0.005 per command)

Typical daily usage: ~$0.10-0.30 depending on voice usage.

This is a personal project, but suggestions and bug reports are welcome via GitHub Issues.

Free to use and modify for personal use.


Corgina - Your AI pregnancy health companion 🐕

Read Entire Article