Meteoropath

Track Weather, Feel Better

A weather tracking app designed for people sensitive to weather changes. Meteoropath helps you understand how atmospheric conditions affect your well-being through barometric pressure tracking, trend analysis, and personalized guidance.

@ObservableAsync/AwaitFactory DIFastlaneString CatalogsOpen-Meteo API

Why Meteoropath?

Millions of people experience headaches, joint pain, or mood changes when the weather shifts—a phenomenon known as meteoropathy. Meteoropath was built to help these individuals understand and prepare for weather-related discomfort by tracking the atmospheric conditions that matter most.

Main view Trends view

Developer Highlights

Architecture & Patterns

  • SwiftUI with @Observable macro (iOS 17+) — Simplified state management with automatic view updates, eliminating the boilerplate of older property wrapper patterns
  • MVVM pattern — Clear separation of concerns with ViewModels handling business logic and Views staying declarative
  • Factory-based Dependency InjectionAppContainer manages service lifecycle and testability without heavy frameworks
  • State enums with associated values — Prevents invalid UI states by making illegal states unrepresentable in the type system

UI/UX

  • iOS 26 Liquid Glass design language — Modern translucent aesthetics that blend with system UI
  • Universal app (iPhone & iPad) — Optimized layouts for all screen sizes with adaptive UI
  • Full Dark & Light mode support — Seamless adaptation to system appearance preferences
  • Dynamic backgrounds — Soothing visual atmosphere that creates a calming experience
  • Metric-specific color palette — Intuitive color coding helps users quickly assess condition severity
  • Pull-to-refresh & GPS location — Native iOS patterns for familiar, frictionless interaction

Testing & Automation

  • Fastlane screenshot automation — Captures App Store screenshots across devices and languages automatically (read more)
  • Unit tests with Given/When/Then pattern — Readable, maintainable test structure
  • UI tests with accessibility identifiers — Reliable element targeting for automated testing
  • Multi-device, multi-language capture — Single command generates all required App Store assets

Data & Networking

  • Open-Meteo API integration — Free, reliable weather data without API key management
  • In-memory caching with 15-minute TTL — Reduces network calls while keeping data fresh
  • Custom NetworkClient — Type-safe networking with proper error handling and retry logic

Code Quality

  • Swift Package Manager — Modular architecture with shared core logic
  • String Catalogs for localization — Full English & Polish support using modern Xcode localization
  • Zero external dependencies in core — Lightweight, fast builds, no dependency conflicts
  • Structured logging with categories — Debug effectively without console noise

Scientific Foundation

The app focuses on the atmospheric metrics that research links to weather sensitivity:

  • Barometric pressure tracking — The primary trigger for weather-related symptoms, with trend analysis showing pressure changes over time
  • Wet bulb temperature — Combines temperature and humidity to assess heat stress risk
  • Dew point measurement — More accurate humidity indicator than relative humidity
  • Intensity-aware guidance — Categorizes changes as low/medium/high with actionable recommendations

Screenshots

iPhone

Main view - Dark Trends view - Dark Main view - Light Trends view - Light

iPad

iPad - Dark iPad - Light