https://github.com/aranfononi/pinch-app-swiftui-masterclass
A simple SwiftUI pinch-to-zoom image viewer built as part of a SwiftUI Masterclass course (Chapter 11). The core idea was to work with gestures like pinch, drag, and tap. I also added my own touch by breaking the layout into clean, reusable components to keep the codebase modular and easier to manage.
https://github.com/aranfononi/pinch-app-swiftui-masterclass
ios ios-developer ios-development iosdeveloper swift swiftui swiftui-animations swiftui-components swiftui-example swiftui-framework swiftui-learning
Last synced: 16 days ago
JSON representation
A simple SwiftUI pinch-to-zoom image viewer built as part of a SwiftUI Masterclass course (Chapter 11). The core idea was to work with gestures like pinch, drag, and tap. I also added my own touch by breaking the layout into clean, reusable components to keep the codebase modular and easier to manage.
- Host: GitHub
- URL: https://github.com/aranfononi/pinch-app-swiftui-masterclass
- Owner: AranFononi
- Created: 2025-04-02T16:39:53.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-27T13:42:54.000Z (about 1 year ago)
- Last Synced: 2025-07-15T09:07:36.878Z (11 months ago)
- Topics: ios, ios-developer, ios-development, iosdeveloper, swift, swiftui, swiftui-animations, swiftui-components, swiftui-example, swiftui-framework, swiftui-learning
- Language: Swift
- Homepage:
- Size: 14.2 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Pinch & Zoom Viewer 📱🖼️
### Learning SwiftUI Gestures, Animations & Component Design
This project is from Chapter 11 of the SwiftUI Masterclass. The main goal was to build a pinch-to-zoom image viewer using tap, drag, and magnification gestures. I also took it a step further by breaking everything into small, clean components for better code structure.
## 📌 Project Overview
A minimal SwiftUI image viewer with smooth zoom, drag, and tap-to-reset interactions. UI updates in real-time and stays responsive while scaling or moving the image.
## 🚀 What I Focused On
- **Gestures in SwiftUI:** Tap, drag, and magnification
- **Custom Components:** Split UI into small reusable views
- **Smooth Animations:** Used `withAnimation` and `symbolEffect`
- **View Coordination:** Managed state across different parts of the app
## 🔥 Features
✅ Pinch to zoom in and out
✅ Double tap to zoom and reset
✅ Drag to move image around
✅ Info panel with scale and position values
✅ Drawer with thumbnails to switch images
✅ Clean and modular structure
---
## 📸 Preview ( might take few seconds to load )

---
## 🛠️ How to Use
1. Clone the repo
2. Open the project in Xcode
3. Run on iPhone simulator or physical device (iOS 16+)
---
## 📬 Contact
For any questions or feedback, feel free to reach out:
- **Email**: [aranfononi@gmail.com](mailto:aranfononi@gmail.com)