AppDimens Dynamic for Apple
August 7, 2026 · View on GitHub
← Project README · API · Apple integration · Strategy catalog · Mathematics
This is the complete documentation set for the direct Swift port. The public baseline is 300 points and measurements describe the active window/scene—not an arbitrary child view.
Choose a path
| I want to… | Start here |
|---|---|
| Install with Xcode | Installation and first screen |
| Use SwiftUI without passing sizes | Apple integration |
| Use UIKit with automatic scene discovery | Apple integration |
| Select a scaling curve | Strategy catalog |
| Understand every formula | Mathematics and calculus |
| Optimize a hot loop or Metal renderer | Performance |
| Migrate Android names | Migration |
| Diagnose incorrect output | Troubleshooting |
Complete library map
flowchart TD Aggregate[AppDimensDynamic] --> Core[AppDimens] Aggregate --> Strategies[AppDimensStrategies] Aggregate --> Auto[AppDimensAuto] Aggregate --> Resize[AppDimensResize] Aggregate --> Units[AppDimensUnits] Aggregate --> Metal[AppDimensMetal] Strategies --> Curves[Density / Diagonal / Fill / Fit / Fluid / Interpolated / Logarithmic / Percent / Perimeter / Power]
Strategy pages
Scaled · Density · Diagonal · Fill · Fit · Fluid · Interpolated · Logarithmic · Percent · Perimeter · Power · Auto · Resize · Physical units
Platform support
| Platform | Minimum | Automatic UI integration | Core and strategies | Metal bridge |
|---|---|---|---|---|
| iOS / iPadOS | 13 | SwiftUI + UIKit | Yes | Yes |
| tvOS | 13 | SwiftUI + UIKit | Yes | Yes |
| macOS | 10.15 | SwiftUI | Yes | Yes |
| visionOS | 1 | SwiftUI + UIKit | Yes | Yes |
| watchOS | 7 | Deterministic API (no window provider) | Yes | Not included |
The watchOS contract intentionally excludes AppDimensProvider, @ScaledDimension, automatic window discovery, and Metal APIs. Supply a DimensConfiguration and use the deterministic API; AppDimensMetal is an empty compatibility module on watchOS so the aggregate product remains importable without compiling SIMD or Metal declarations for the device SDK. The minimum is watchOS 7, the oldest deployment target supported by the Xcode 16 toolchain used by CI.