Design for glances, not sessions
A watch app is used for seconds. Interaction should deliver one useful thing quickly: start a workout, confirm a dose, acknowledge an alert or see a metric. Dense menus fail on a small screen, so we cut features until each screen has one job. Phone and watch roles should be explicit. The watch captures, glances and confirms, while the phone configures, visualizes history and handles heavy lifting. Splitting responsibilities this way avoids a cramped watch interface and duplicated logic.
Platform choice matters. Apple Watch apps use Swift and SwiftUI with watchOS, complications and Smart Stack widgets. Wear OS uses Kotlin with Compose for Wear OS, tiles and complications. Cross-platform shortcuts rarely hold on watches, so we usually build natively and share logic through the phone backend. Always-on displays, complications and Smart Stack widgets are how a watch app is actually seen. Designing a few useful glanceable surfaces usually delivers more value than a large app that people have to open on purpose.