diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..cc423bb --- /dev/null +++ b/LICENSE @@ -0,0 +1,3 @@ +Copyright 2022 Moving Parts MVP, Inc. All rights reserved. + +Please check out https://movingparts.io/pow to find out about licensing Pow for you app. diff --git a/README.md b/README.md index ad09dee..a1c54d8 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,11 @@ -![](./previews/og-image.png) +![](./images/og-image.png) # Pow Delightful SwiftUI transitions for your app. > **Note** -> This is a Beta version. -> -> Pow is free while in Beta and will be a simple one-time purchase after that. +> Pow is free to test and evaluate. To deploy an app using it to the App Store, you need to [purchase a license](https://movingparts.io/pow). # Installation @@ -17,8 +15,6 @@ To add a package dependency to your Xcode project, select _File_ > _Add Package_ - [Xcode Previews depending on Pow are broken in Xcode 14b5](https://developer.apple.com/forums/thread/707569). **Suggested Solution:** Download, unpack and embed the [`.xcframework` referenced in the `Package.swift`](./Package.swift) file. -- Preview videos in the README don't render in Chrome, Firefox https://github.com/movingparts-io/Pow/issues/1. - **Suggested Solution:** Open this page in Safari. # Overview @@ -30,7 +26,7 @@ myView.transition(.movingParts.anvil) ## Anvil -![A view dropping down like an avil, hitting the ground in a cloud of dust.](./previews/anvil.mov) +[Preview](https://movingparts.io/pow/#anvil) A transition that drops the view down from the top. @@ -42,6 +38,8 @@ static var anvil: AnyTransition ## Blinds +[Preview](https://movingparts.io/pow/#blinds) + A transition that reveals the view as if it was behind window blinds. ```swift @@ -59,7 +57,9 @@ Parameters: static func blinds(slatWidth: CGFloat, style: BlindsStyle = .venetian, isStaggered: Bool = false) -> AnyTransition ``` -## Blur +## Blur + +[Preview ](https://movingparts.io/pow/#blur) A transition from blurry to sharp on insertion, and from sharp to blurry on removal. @@ -70,7 +70,7 @@ static var blur: AnyTransition ## Boing -![A view dropping down, deforming as it hits its resing position as if made from jelly.](./previews/boing.mov) +[Preview](https://movingparts.io/pow/#boing) A transition that moves the view down with any overshoot resulting in an elastic deformation of the view. @@ -88,6 +88,8 @@ static func boing(edge: Edge) -> AnyTransition ## Clock +[Preview](https://movingparts.io/pow/#clock) + A transition using a clockwise sweep around the centerpoint of the view. ```swift @@ -104,6 +106,8 @@ static func clock(blurRadius: CGFloat) -> AnyTransition ## Flicker +[Preview](https://movingparts.io/pow/#flicker) + A transition that toggles the visibility of the view multiple times before settling. @@ -122,7 +126,7 @@ static func flicker(count: Int) -> AnyTransition ## Flip -![A view rotating into view.](./previews/flip.mov) +[Preview](https://movingparts.io/pow/#flip) A transition that inserts by rotating the view towards the viewer, and removes by rotating the view away from the viewer. @@ -136,6 +140,8 @@ static var flip: AnyTransition ## Glare +[Preview](https://movingparts.io/pow/#glare) + A transitions that shows the view by combining a diagonal wipe with a white streak. @@ -154,8 +160,6 @@ In this example, the removal of the view is using a glare with an exponential ease-in curve, combined with a anticipating scale animation, making for a more dramatic exit. -![A view that appears with a white steak and disappears with the same streak, combined with a rising up animation.](./previews/glare.mov) - ```swift infoBox .transition( @@ -183,6 +187,8 @@ static func glare(angle: Angle, color: Color = .white) -> AnyTransition ## Iris +[Preview](https://movingparts.io/pow/#iris) + A transition that takes the shape of a growing circle when inserting, and a shrinking circle when removing. @@ -196,6 +202,8 @@ static func iris(origin: UnitPoint = .center, blurRadius: CGFloat = 0) -> AnyTra ## Move +[Preview](https://movingparts.io/pow/#move) + A transition that moves the view from the specified edge of the on insertion and towards it on removal. @@ -227,7 +235,7 @@ static func move(angle: Angle) -> AnyTransition ## Pop -![A view that appears following a ripple effect and colored particles.](./previews/pop.mov) +[Preview](https://movingparts.io/pow/#pop) A transition that shows a view with a ripple effect and a flurry of tint-colored particles. @@ -270,6 +278,8 @@ static func pop(_ style: S) -> AnyTransition ## Poof +[Preview](https://movingparts.io/pow/#poof) + A transition that removes the view in a dissolving cartoon style cloud. The transition is only performed on removal and takes 0.4 seconds. @@ -286,8 +296,6 @@ removes by rotating to the specified rotation in three dimensions. In this example, the view is rotated 90˚ about the y axis around its bottom edge as if it was rising from lying on its back face: -![A view that raises up from lying on its back, overshooting as it does.](./previews/rotate3d.mov) - ```swift Text("Hello") .transition(.movingParts.rotate3D( @@ -317,7 +325,7 @@ static func rotate3D(_ angle: Angle, axis: (x: CGFloat, y: CGFloat, z: CGFloat), ## Skid -![A sliding in from the left, overshowing and deforming as it moves.](./previews/skid.mov) +[Preview](https://movingparts.io/pow/#skid) A transition that moves the view in from its leading edge with any overshoot resulting in an elastic deformation of the view. @@ -338,6 +346,8 @@ static func skid(direction: SkidDirection) -> AnyTransition ## Swoosh +[Preview](https://movingparts.io/pow/#swoosh) + A three-dimensional transition from the back of the towards the front during insertion and from the front towards the back during removal. @@ -347,7 +357,7 @@ static var swoosh: AnyTransition ## Vanish -![A view that dissolves into many small particles.](./previews/vanish.mov) +[Preview](https://movingparts.io/pow/#vanish) A transition that dissolves the view into many small particles. @@ -369,6 +379,8 @@ static func vanish(_ style: S) -> AnyTransition ## Wipe +[Preview](https://movingparts.io/pow/#wipe) + A transition using a sweep from the specified edge on insertion, and towards it on removal. diff --git a/previews/og-image.png b/images/og-image.png similarity index 100% rename from previews/og-image.png rename to images/og-image.png diff --git a/previews/anvil.mov b/previews/anvil.mov deleted file mode 100644 index 7e5f34b..0000000 Binary files a/previews/anvil.mov and /dev/null differ diff --git a/previews/boing.mov b/previews/boing.mov deleted file mode 100644 index 0648ecd..0000000 Binary files a/previews/boing.mov and /dev/null differ diff --git a/previews/flip.mov b/previews/flip.mov deleted file mode 100644 index 571bde3..0000000 Binary files a/previews/flip.mov and /dev/null differ diff --git a/previews/glare.mov b/previews/glare.mov deleted file mode 100644 index 26e9fc8..0000000 Binary files a/previews/glare.mov and /dev/null differ diff --git a/previews/pop.mov b/previews/pop.mov deleted file mode 100644 index 4bd7adf..0000000 Binary files a/previews/pop.mov and /dev/null differ diff --git a/previews/rotate3d.mov b/previews/rotate3d.mov deleted file mode 100644 index a8870ee..0000000 Binary files a/previews/rotate3d.mov and /dev/null differ diff --git a/previews/skid.mov b/previews/skid.mov deleted file mode 100644 index 68fd047..0000000 Binary files a/previews/skid.mov and /dev/null differ diff --git a/previews/vanish.mov b/previews/vanish.mov deleted file mode 100644 index 55654ec..0000000 Binary files a/previews/vanish.mov and /dev/null differ