Description

WeatherFlow is a clean, data-driven watchface for the Garmin Forerunner 255, designed to harmonize your environment with your watch display. Key Feature: Dynamic Weather Background The background of this watchface automatically adapts to your current local weather conditions using the Toybox.Weather module. This provides an intuitive visual cue of the outdoors at a glance: Clear/Sunny: A bright, high-contrast layout optimized for direct sunlight. Rainy: A specialized "Rain" theme with stylized precipiation elements. Cloudy: A muted, overcast-inspired background for better visual comfort. Snowy: A winter-themed display with high-visibility accents. Functional Data Display The layout prioritizes legibility and essential daily metrics: Time & Date: Large, clear digital time with full date information. Health Metrics: Real-time Heart Rate (BPM) monitoring. Activity Tracking: Daily Step count and Battery percentage. Status Icons: Bluetooth connection and Notification alerts. Optimized for MIP Displays Specifically engineered for Memory-In-Pixel (MIP) screens, the design uses a zero-gradient color palette to ensure maximum crispness and prevent the "washed-out" look often found in complex designs. Battery Efficient Built with performance in mind, the onUpdate logic is optimized to minimize CPU cycles, ensuring that your background transitions do not compromise your Forerunner 255's battery life.

What is new

# Changelog All notable changes from `v0.0.23` through `v0.0.101`, full changelog available at: https://github.com/WangYihang/garmin-watch-face-weather-flow/blob/main/CHANGELOG.md ## v0.0.101 — 2026-05-21 ### Features - feat(trial): bouncing motion + per-char rainbow gradient label - feat(trial): replace pill bg with 2-px white outline halo - feat(metrics): add 'Clock Only' layout preset (no metrics) - feat(metrics): implement Humidity/Wind/Sunrise/Sunset metrics - feat(metrics): default new installs to 'Clock Only' layout preset ### Fixes - fix(view): always full-draw in calm weather — disable PR #39 dirty-skip - fix(boot): guard _registerSettingsObservers behind foreground sentinel - fix(trial): guard against System.getTimer() Int32 overflow - fix(boot): move _registerSettingsObservers to getInitialView (background-safe) - fix(makefile): improve platform-specific configurations and simulator launch command - fix(trial): drop trial-banner animation rate FAST → MEDIUM (OOM) - fix(makefile): update simulator launch command for macOS and Linux - fix(compat): support CIQ 3.x devices (9-arg limit, missing Activity fields) - fix(metrics): use ASCII '/' instead of ↑↓ in HighLowTempMetric ### Other - chore: update version to 0.0.100 in manifest and uv.lock - chore(build): strip (:test) bytecode from production builds - perf(layout): drop precomputed Y.width cache (~5 KB heap on fr255) - perf(metrics-row): make PRESET_TOP/BOTTOM static const - Bump version: 0.0.100 → 0.0.101 - Merge pull request #84 from WangYihang/claude/hotfix-disable-dirty-skip-blackscreen - Merge pull request #85 from WangYihang/claude/fix-background-context-settings - Merge pull request #86 from WangYihang/claude/fix-trialindicator-negative-timer-oob - Merge pull request #87 from WangYihang/claude/fix-bg-settings-move-to-getinitialview - Merge pull request #88 from WangYihang/claude/fix-trial-anim-medium-tier - Merge pull request #89 from WangYihang/claude/memory-squeeze-phase-a - Merge pull request #90 from WangYihang/claude/trial-bouncing-animation - Merge pull request #91 from WangYihang/claude/fix-highlowtemp-ascii - Merge pull request #92 from WangYihang/claude/trial-bouncing-animation - Merge pull request #93 from WangYihang/claude/add-clock-only-preset - Merge pull request #94 from WangYihang/claude/add-weather-metrics - Merge pull request #95 from WangYihang/claude/set-clockonly-as-default

Screenshots

WeatherFlow: Adaptive Background Watchface · Screenshot 0 WeatherFlow: Adaptive Background Watchface · Screenshot 1 WeatherFlow: Adaptive Background Watchface · Screenshot 2 WeatherFlow: Adaptive Background Watchface · Screenshot 3 WeatherFlow: Adaptive Background Watchface · Screenshot 4

Supported language (1)

Compatible devices (105)

Approach® S50 Approach® S70 (42mm) Approach® S70 (47mm) Captain Marvel Captain Marvel D2™ Air D2™ Air X10 D2™ Air X15 D2™ Mach 1 D2™ Mach 1 Pro D2™ Mach 2 D2™ Mach 2 Pro Darth Vader™ Darth Vader™ Descent™ G2 Descent™ MK3 - 43mm Descent™ MK3i - 51mm Enduro™ 2 Enduro™ 3 epix™ (Gen 2) epix™ (Gen 2) epix™ Pro (42mm) epix™ Pro (47mm) epix™ Pro (51mm) fēnix® 7 fēnix® 7 fēnix® 7 Pro fēnix® 7 Pro – Solar Edition (No Wi-Fi®) fēnix® 7S fēnix® 7S fēnix® 7S Pro fēnix® 7X fēnix® 7X fēnix® 7X Pro fēnix® 7X Pro No Wi-Fi fēnix® 8 AMOLED (43mm) fēnix® 8 AMOLED (47mm/51mm) fēnix® 8 Pro fēnix® 8 Solar (47mm) fēnix® 8 Solar (51mm) fenix® 9 - 43 mm fenix® 9 – 47 mm fēnix® E First Avenger First Avenger Forerunner® 165 Forerunner® 165 Music Forerunner® 170 Forerunner® 170 Music Forerunner® 255 Forerunner® 255 Music Forerunner® 255S Forerunner® 255S Music Forerunner® 265 Forerunner® 265S Forerunner® 570 - 42mm Forerunner® 570 - 47mm Forerunner® 70 Forerunner® 70 Forerunner® 955 Dual Power Forerunner® 965 Forerunner® 970 Instinct® 3 – 45 mm, AMOLED Instinct® 3 – 50 mm, AMOLED Instinct® Crossover AMOLED MARQ® (Gen 2) MARQ® Commander (Gen 2) – Carbon Edition MARQ™ Aviator (Gen 2) Mercedes-Benz Venu® Mercedes-Benz Venu® Mercedes-Benz Venu® 2 Mercedes-Benz Venu® 2 Mercedes-Benz Venu® 2S Mercedes-Benz Venu® 2S Rey™ Rey™ tactix® 7 tactix® 7 – AMOLED Edition tactix® 8 – 47 mm, AMOLED tactix® 8 – 51 mm, Solar Venu® Venu® Venu® 2 Venu® 2 Venu® 2 Plus Venu® 2 Plus Venu® 2S Venu® 2S Venu® 3 Venu® 3S Venu® 4 – 41 mm Venu® 4 – 45 mm Venu® Sq. 2 Venu® Sq. 2 Music Venu® Sq. Music Venu® Sq. Music Venu® Sq. Music Venu® Sq. Music Venu® X1 vívoactive® 4 vívoactive® 4 vívoactive® 4S vívoactive® 4S vívoactive® 5 vívoactive® 6