MGFlipView
MGFlipView allows to create flipping view in easy way without worrying about flipping animation and flipping logic.
Install / Use
/learn @Zaprogramiacz/MGFlipViewREADME
MGFlipView
About
If you are looking for an easy way of implement 3D flipping view, you are in the right place. MGFlipView allows to create flipping view in easy way without worring about flipping animation and flipping logic.
The library is written in SwiftUI and it can be used on all platforms (iOS, macOS, watchOS, tvOS).
Examples of usage for all platforms are available after opening MGFlipView.xcworkspace.
The library is distributed via SPM.
Preview

Documentation
FlipView takes 6 arguments:
| Argument | Type | Description |
| --------- |:----------------------:| ------------ |
| frontView | () -> View | Front view builder. Visible if flipped == true. |
| backView | () -> View | Back view builder. Visible if flipped == false. |
| flipped | Binding<Bool> | Binding which gives possiblity to flip the view. |
| flipAxis | FlipAxis | Rotation axis. FlipAxis have 4 defined values(x, y, xy, custom(x: Double, y: Double)). The custom value gives possiblity to declare your own axis. It has x default value when argument is not passed to the FlipView initializer. |
| perspective | CGFloat | The relative vanishing point. It has 0.5 default value when argument is not passed to the FlipView initializer. |
| animation | AnimationDescription | Defines the animation that takes place when flipping. Animation can be customized by setting duration and timing function (linear, easeIn, easeOut, easeInOut). It has .init(type: .linear, duration: 0.25) default value when argument is not passed to the FlipView initializer. |
public init(@ViewBuilder frontView: @escaping () -> ContentFront,
@ViewBuilder backView: @escaping () -> ContentBack,
flipped: Binding<Bool>,
flipAxis: FlipAxis = .x,
perspective: CGFloat = 0.5,
animation: AnimationDescription = .default)
Installation
Use https://github.com/Zaprogramiacz/MGFlipView.git link to add Swift Package to Xcode project
License
Copyright (c) 2020 Maciej Gomółka
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
