A Swift library for iOS that replicates the 3D transform and dynamic shadow animation of iOS 14 widgets.
SPPerspective is a Swift library for iOS that replicates the 3D tilt and dynamic shadow animation seen in iOS 14 widgets. It allows developers to apply this native-style animation to any UIView in their app, enhancing visual appeal with realistic depth and motion. The library solves the problem of manually implementing complex 3D transforms and synchronized shadow effects.
iOS developers building apps for iOS 12+ who want to add polished, native-looking 3D animations and interactive depth effects to their user interfaces, particularly those mimicking iOS 14's widget style.
Developers choose SPPerspective because it provides a simple, one-line API to achieve a complex animation effect that matches Apple's design exactly, includes a visual editor for fine-tuning, and offers extensive customization without requiring deep Core Animation expertise.
Widgets iOS 14 animation with 3D and dynamic shadow. Customisable transform and duration.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
With `view.applyPerspective(.iOS14WidgetAnimatable)`, you can add complex 3D animations instantly, as demonstrated in the Quick Start section, reducing boilerplate code.
Allows fine-tuning of duration, distortion, angle, and shadow properties like blur, opacity, and offsets, detailed in the Customise section for tailored effects.
Includes an example app for real-time parameter adjustment, enabling developers to preview and tweak animations without repetitive coding, as shown in the video preview.
Provides presets (`.iOS14WidgetAnimatable` and `.iOS14WidgetStatic`) that exactly match Apple's iOS 14 widget animation, ensuring design consistency with minimal effort.
The author admits to poor English in the README, which may confuse non-Russian speakers and require extra effort to understand, as noted in the Сontribution section.
Strictly limited to iOS 12+ and Swift, making it unsuitable for cross-platform projects or teams using other tech stacks, with no support for older iOS versions.
Shadow translation properties like `startVerticalOffset` and `cornerVerticalOffset` have specific rules and can be unintuitive without the visual editor, potentially leading to trial-and-error.