Summary
Add alternative visual representations for the breathing exercise beyond the current circle animation, including a square with directional movement and shimmer transitions between phases.
Description
The app currently uses a single BreathingCircle component that scales between 1.0x and 1.5x to represent inhale/exhale phases. This feature request proposes adding alternative visualization options to provide users with variety and potentially better suit different preferences.
Applies to both watchOS and iOS apps.
Proposed Visualizations
1. Square with Directional Movement
- A square shape that animates:
- Inhale: Expands horizontally (left-to-right fill or stretch)
- Exhale: Contracts vertically (top-to-bottom drain or shrink)
- Provides a more geometric/structured visual cue
2. Shimmer Transitions
- Add a shimmer or glow effect that transitions between breathing phases
- Visual pulse/sparkle effect when switching from inhale → exhale and exhale → inhale
- Enhances the feedback at phase boundaries
Implementation Considerations
- Create a protocol/abstraction for breathing visualizations (e.g.,
BreathingVisualization)
- Current implementations in
OvloWatch/Views/Components/BreathingCircle.swift and OvloPhone/Views/Components/BreathingCircle.swift can serve as reference
- New visualizations should accept the same inputs:
BreathingState, size, progress values
- Consider adding a settings option to let users choose their preferred visualization
- Maintain accessibility by ensuring animations aren't the only feedback mechanism (haptics already exist)
- Consider moving shared visualization components to
Shared/ directory
Acceptance Criteria
Summary
Add alternative visual representations for the breathing exercise beyond the current circle animation, including a square with directional movement and shimmer transitions between phases.
Description
The app currently uses a single
BreathingCirclecomponent that scales between 1.0x and 1.5x to represent inhale/exhale phases. This feature request proposes adding alternative visualization options to provide users with variety and potentially better suit different preferences.Applies to both watchOS and iOS apps.
Proposed Visualizations
1. Square with Directional Movement
2. Shimmer Transitions
Implementation Considerations
BreathingVisualization)OvloWatch/Views/Components/BreathingCircle.swiftandOvloPhone/Views/Components/BreathingCircle.swiftcan serve as referenceBreathingState,size, progress valuesShared/directoryAcceptance Criteria