Skip to content

About

Track the 24-hour solar cycle, 5 twilight phases, and real-time sun position.

Topics

Resources

Stars

34 stars

Watchers

3 watching

Forks

Repository files navigation

Icon Solar Path Watch Face for Wear OS

Build & Release Platform Format Target SDK Compose Latest Release License Privacy Policy

Solar Path is an astronomically accurate 24-hour solar tracking watch face and companion application for Wear OS, inspired by iconic celestial timepieces and classic 24-hour astronomical timekeeping. It dynamically tracks the sun's passage across the celestial vault and relative to your local horizon—illustrating daylight, twilight phases, and nighttime with mathematical precision.

Developed with ❤️ by amoledwatchfaces™.


📷 Previews

Solar Path Preview 1 Solar Path Preview 2 Solar Path Preview 3

Solar Path Preview 4 Solar Path Preview 5 Solar Path Preview 6


✨ Features

  • 24-Hour Circular Solar Path:
    • Solar noon at zenith (top / 12 o'clock / 0°).
    • Solar midnight at nadir (bottom / 6 o'clock / 180°).
    • Real-time celestial sun marker orbiting along the 24-hour circumference with an atmospheric radiating solar beam.
  • Accurate Twilight & Night Arcs:
    • Daylight: Sun elevation > 0°
    • Civil Twilight: 0° to -6°
    • Nautical Twilight: -6° to -12°
    • Astronomical Twilight: -12° to -18°
    • Night: < -18°
  • Dynamic Atmosphere & Lighting:
    • Day / night disk with smooth alpha transitions based on solar elevation ($\pm 15^\circ$ horizon threshold).
    • Dynamic sky hue adjusting smoothly through civil dusk and dawn.
    • Subtle starlight field emerging across the upper celestial quadrant after dusk.
  • Dual Clock Modes:
    • Digital Clock: Clean, modern digital readout with optional leading zeros and alternate accent colors.
    • Analog Clock: Sleek hour, minute, and second hands with hour indices and date indicator.
  • Watch Face Format (WFF v4 & v5):
    • Declarative XML rendering natively on the Wear OS system with zero background battery drain (hasCode = false).
    • Standalone WFF APK bundled inside the companion app and delivered via AndroidX Watch Face Push (androidx.wear.watchfacepush).
    • Seamless automatic support for Watch Face Format 5 on Wear OS 6+ (API 37+) devices with multi-layout capability.
  • Glanceable Wear OS Widgets & Tiles:
    • Three standalone widgets and tiles (Solar Graph, Dawn Times, and Dusk Times) accessible directly from your Wear OS carousel.

🧭 Complication Slots

Solar Path features customizable perimeter arc slots, a center application shortcut, and two large arc complication slots in Watch Face Format 5 (WFF 5), plus an internal communication channel powering the astronomical engine:

Slot ID Name / Position Angle Span Format Supported Complication Types Default Provider
1 Top-Left Arc 270° → 360° WFF 4 & 5 RANGED_VALUE, LONG_TEXT, SHORT_TEXT, EMPTY Daily Steps (Fitbit / Samsung Health / STEP_COUNT)
2 Top-Right Arc 0° → 90° WFF 4 & 5 RANGED_VALUE, LONG_TEXT, SHORT_TEXT, EMPTY Active Calories / UV Index / Battery (WATCH_BATTERY)
3 Bottom-Right Arc 90° → 180° WFF 4 & 5 RANGED_VALUE, LONG_TEXT, SHORT_TEXT, EMPTY Current Weather (Google Weather) / NEXT_EVENT
4 Bottom-Left Arc 180° → 270° WFF 4 & 5 RANGED_VALUE, LONG_TEXT, SHORT_TEXT, EMPTY Distance / Precipitation / Battery (WATCH_BATTERY)
5 App Shortcut (Center) Center Dial WFF 4 & 5 MONOCHROMATIC_IMAGE, SMALL_IMAGE, EMPTY Custom App Shortcut (APP_SHORTCUT)
6 Internal Data Bridge (Center) N/A WFF 4 & 5 SHORT_TEXT, EMPTY (Non-editable) Solar Path Complication Service (Encodes real-time solar milestone angles)
7 Top Large Arc 270° → 90° WFF 5 only RANGED_VALUE, LONG_TEXT, EMPTY Daily Steps (Fitbit / Samsung Health / WATCH_BATTERY)
8 Bottom Large Arc 90° → 270° WFF 5 only RANGED_VALUE, LONG_TEXT, EMPTY Next Event (NEXT_EVENT)

Note

Complication Slot 6 is strictly non-editable (isCustomizable="FALSE"). It serves as the internal real-time communication channel between the Solar Path companion service and the Watch Face Format dial. It dynamically injects solar milestone coordinates (sunrise, sunset, dusk, dawn, solar noon, and nadir) directly into the dial's rendering pipeline.

📐 Layout Configurations (WFF 5)

In Watch Face Format 5 (Wear OS 6+ / API 37+), you can switch between 4 outer arc complication layouts:

  • 4x (Default): Uses Slots 1, 2, 3, and 4 (four quadrant arcs).
  • 2x: Uses Slots 7 and 8 (two large 180° top and bottom arcs).
  • 3x Up: Uses Slot 7 (Top Large Arc) + Slots 3 and 4 (Bottom-Right and Bottom-Left quadrant arcs).
  • 3x Down: Uses Slot 8 (Bottom Large Arc) + Slots 1 and 2 (Top-Left and Top-Right quadrant arcs).

🎨 Customizations & Styles

Solar Path offers extensive customization options available directly in the Wear OS watch face picker and companion settings:

  • Primary, Secondary & Tertiary Themes: Over 70+ meticulously curated color palettes (Atmospheric Blue, Graphite, Alpine Green, Deep Ocean, Sunset Orange, Solar Gold, Cyberpunk Neon, Terracotta, and more).
  • Layout (WFF 5): Switch outer arc configurations between 4x, 2x, 3x Up, and 3x Down.
  • Clock Style:
    • Digital: Crisp modern digital time readout.
    • Analog: Elegant minimalist analog hands and indices.
  • Digital Clock Info (SubText):
    • Day of Week: Current day name.
    • AM/PM: 12-hour period indicator.
    • Seconds: Live digital seconds counter.
    • Weather: Real-time temperature & condition text.
  • Seconds Indicator:
    • Jump: Classic ticking seconds hand.
    • Smooth: Continuous sweeping seconds motion.
    • None: Hidden seconds indicator for minimalist look.
  • Clock Background:
    • Dark: Solid contrast background disk behind the center dial.
    • Transparent: Clean, see-through dial showing the solar gradients and starfield.
  • Always-On Display (AOD) Mode:
    • Dimmed: Keeps dial elements visible with optimized ambient brightness.
    • Dimmed & No Arcs: Minimalist ambient face hiding outer arcs to conserve battery life.
  • Arc Gradients: Toggle smooth progress bar color gradients on outer arcs on or off.
  • Leading Zero: Toggle 12/24-hour leading zero (e.g. 09:41 vs 9:41).
  • Clock Alternate Colors: Switch clock text and hands between primary theme and high-contrast accent colors.

🌈 Preset Flavors

Quickly switch between 11 curated style presets designed for different aesthetics and environments:

ID Flavor Name Clock Style Background Themes (Primary / Secondary / Tertiary) Highlights
0 Default Digital Dark Atmospheric Blue Balanced, authentic solar tracker with flat clean arcs.
1 Solar Gold Analog Dark Wheat & Champagne Warm golden sunlight tones with gradient arc accents.
2 Classic Analog Analog Dark Graphite & Cloud Timeless monochrome watch face with analog hands.
3 Deep Ocean Digital Dark Ocean, Sapphire & Royal Blue Vibrant oceanic gradient arcs and crisp digital readout.
4 Alpine Green Analog Dark Alpine Green, Pine & Forest Natural forest greens paired with elegant analog indices.
5 Sunset Glow Digital Dark Orange, Coral & Amber Dusk-inspired warm palette with glowing gradient progress bars.
6 Midnight Amethyst Analog Dark Amethyst, Lilac & Lavender Nocturnal cosmic purple theme with refined analog styling.
7 Nordic Minimal Digital Transparent Cloud White & Graphite High-contrast Scandinavian minimalism with transparent dial.
8 Cyberpunk Neon Digital Dark Green Shock, Neon Green & Lime High-visibility electric green and lime futuristic dial.
9 Terracotta Earth Analog Dark Oak Brown, Walnut & Chai Earthy tones inspired by natural clay, soil, and wood.
10 Pure Stealth Digital Transparent Charcoal & Cloud Ultra-dimmed monochrome look on transparent background.

🧩 Standalone Complication Service

Solar Path also provides a dedicated standalone complication data source that can be added to any Wear OS watch face:

Complication Service Supported Types Description
Solar Path Complication SHORT_TEXT Displays the next upcoming solar event (e.g., SUNRISE, SUNSET, SOLAR NOON, CIVIL DUSK) with exact time and icon. Tapping opens the Solar Path app.

🪟 Wear OS Widgets & Tiles

Solar Path includes three interactive, glanceable Wear OS Widgets and Tiles powered by Jetpack Glance and Remote Compose:

Widget / Tile Description Key Features
Solar Graph Graphical representation of the sun's 24-hour journey across the sky. Real-time position marker, smooth sun elevation curve, glowing solar aura, horizon line, sunrise & sunset times, and zenith metrics.
Dawn Times Morning twilight breakdown. Fast access to Astronomical, Nautical, and Civil Dawn schedules leading into Sunrise and Solar Noon.
Dusk Times Evening twilight breakdown. Complete chronological timeline for Sunset, Civil, Nautical, and Astronomical Dusk into Solar Nadir / Midnight.

📱 Wear OS Companion App

The integrated Wear OS companion application provides astronomical calculations and location management:

  • Astronomical Timeline: Cards showing sunrise, sunset, civil/nautical/astronomical dawn & dusk, solar noon, and nadir times.
  • Smart Location Management:
    • Automatic positioning via FusedLocationProviderClient using privacy-friendly Approximate Location (ACCESS_COARSE_LOCATION only — no precise GPS tracking required).
    • Manual location search with Geocoder and recent locations history.
    • Periodic background location updates via WorkManager.
  • One-Tap Watch Face Activation:
    • Seamlessly pushes and activates the bundled WFF watch face via AndroidX Watch Face Push.
    • Automatic watch face update on app update (ACTION_MY_PACKAGE_REPLACED).
  • Celestial Mechanics Guide: Interactive FAQ explaining solar elevation, twilight sectors, and horizon calculations.

🛠️ Tech Stack & Architecture

  • Watch Face: Watch Face Format (WFF v4 & v5) XML rendered natively by the Wear OS system.
  • Deployment: AndroidX Watch Face Push (androidx.wear.watchfacepush:1.0.0).
  • UI & Presentation: Jetpack Compose for Wear OS using Wear Material 3.
  • Widgets & Tiles: Jetpack Glance for Wear OS (androidx.glance.wear:1.0.0-alpha20), AndroidX Wear Tiles (androidx.wear.tiles:1.6.2), and Remote Compose (androidx.compose.remote:remote-creation-compose:1.0.0-alpha21) for high-performance canvas rendering.
  • Astronomy Engine: Kastro — 100% on-device astronomical calculations (no external APIs or network required).
  • Location: Privacy-friendly Approximate Location (ACCESS_COARSE_LOCATION) via Google Play Services Location (play-services-location:21.4.0) with Geocoder.
  • Dependency Injection: Dagger Hilt (hilt-android:2.60.1).
  • Background Work: AndroidX WorkManager (work-runtime-ktx:2.12.0).
  • Local Persistence: Jetpack DataStore.

🚀 Installation & Releases

Google Play Store

Download the app directly to your Wear OS smartwatch from Google Play:

Get it on Google Play

Sideloading (GitHub Releases)

Precompiled .apk packages (wear-release.apk) are available on our GitHub Releases page.

Note

Sideloaded APKs from GitHub and Google Play Store installations are signed with different keys due to Google Play App Signing. To switch between them, you must uninstall the existing app first.


💻 Development Setup

Prerequisites

  • Android Studio Ladybug / Meerkat (2024.2+ recommended)
  • JDK 21
  • Wear OS 6.0+ emulator or physical watch (Min SDK 36 / Target SDK 37)

Building Locally

# 1. Clone repository
git clone https://github.com/amoledwatchfaces/Solar-Path-Watch-Face-Wear-OS.git
cd Solar-Path-Watch-Face-Wear-OS

# 2. Build Debug APKs
./gradlew :wear:assembleDebug

# 3. Build Release Binaries
./gradlew :wear:assembleRelease :wear:bundleRelease

📄 License & Credits

About

Track the 24-hour solar cycle, 5 twilight phases, and real-time sun position.

Topics

Resources

Stars

34 stars

Watchers

3 watching

Forks

Releases

Sponsor this project

Contributors

Languages