Mastering SwiftUI

Learn how to build fluid UIs and a real world app with SwiftUI and SwiftData. Fully updated for Xcode 15, iOS 17 & Swift 5.9.

A course designed for you to master SwiftUI, SwiftData and iOS app development

Written for both beginners and developers with some iOS programming experience. Even if you have developed an iOS app before, this book will help you understand this brand-new framework and learn how to integrate UIKit with SwiftUI.
Dive deep into SwiftUI and learn to develop UI in declarative syntax. You will work with various UI elements including Context Menu, List, ScrollView, etc, and learn how to create complex layouts with Stacks.
Build a real world app for managing personal spending. Once you manage the basics, you will learn how to build a personal finance app with SwiftUI, SwiftData and Combine.

Over 950 Pages and 50 Projects

We will start with the basics and then dive deep into SwiftUI. You will learn how to work with the built-in components, animations, create complex UIs, and explore new SwiftUI APIs introduced in iOS 17. The iOS 17 version comes with over 100 pages of new content including the new SwiftData framework.
Path and Shape
Understand what a path is and learn how to draw lines, arcs, pie charts, and donut charts.
Layout with Stacks
Show you how to layout UI components and build a complex UI (e.g. card view and grid) using stacks.
ScrollView and Carousel UI
Learn to build a scrollable interface with ScrollView and create a carousel-like UI with it.
Working with UI elements
Learn how to build an animated buttons, perspective text, interactive text fields, image overly, and many more.
State and Binding
SwiftUI comes with a few built-in features for state management. You'll learn how to use it to manage your application states.
Animations and Transitions
SwiftUI made it very easy to animate a view. Learn how to animate views using implicit and explicit animations.
Modal Views and Alert
Learn how to present and dismiss a card-like modal view. You will also learn how to work with alerts.
Dynamic List
Learn how to present rows of data using List. Alongside the implementation, you will learn how to refactor your code.
Navigation UI
Walk you through the implementation of a navigation UI and understand how data passing is performed.
Building Forms
Developing a form is an essential skill you need to grasp. Learn to build a form using the built-in Form and Picker component.
Working with Combine
Explore the new Combine framework and learn how you can integrate it into SwiftUI for data sharing between views.
Context Menu and Gestures
Learn how to use the context menu and handle user's gestures.
Web APIs and JSON
Learn how to handle REST APIs and parse data in JSON format.
Working with Core Data
Learn how to integrate Core Data with SwiftUI and build a ToDo list app.
Integrate with UIKit
Learn how to use UIViewRepresentable to tap into the UIKit framework and reuse some of the UI components like search bar.
Building an Animated Progress Ring
Learn how to create an animated progress ring using the Animatable protocol and AnimatableModifier, plus make it as a sharable component using LibraryContentProvider.
Using matchedGeometryEffect to create cool animations
Learn how to use the new API to create amazing view animations.
Using Grid Layout
You will learn how to create complex grid layout using LazyVGrid and LazyHGrid.
Using DatePicker for Date Input
Learn how to use the new DatePicker for handling date input.
Creating a Tinder like UI
Learn how to use gestures and stack views to create a Tinder like user interface.
Creating an Apple Wallet like Animation and View Transition
Learn how to use stack views to build an Apple Wallet like UI and interact with users using gestures.
Creating Bar Charts and Line Charts
Learn how to use the new Chart framework to draw bar and line charts.
Using Live Text API
Learn how to use the Live Text API to capture text within images.
Creating Grid Layout Using Grid APIs
Learn how to use the new Grid API for composing grid-based layout.

Learn by Doing

Learn by doing is at the heart of our teaching. You can't just read a book and learn coding. You have to fire up Xcode and write code to learn. Our course and books feature a lot of projects and exercises to help you pick up SwiftUI and iOS app development efficiently.
Over 50 Hands-on Projects
Each chapter of our book has at least one simple project to work on. Through the projects, you will understand how to work with various types of UI elements and build interactive UIs.
Full Source Code Included
All the projects and source code are available for download. You can use them as a reference. And you're free to use the code in your own projects (personal/commercial).
1 Year Free Update
Whenever a new version of SwiftUI or iOS is released, we will review and update our course materials. You are free to access all the updated materials during the first year of purchase.

Build a Personal Finance App with SwiftUI and Combine

Put together everything you learned about SwiftUI components and build a real world app
Build Complex Layout with Stacks
Combine views with stacks and build the UI you want. Learn how to use VStack, HStack,and ZStack to layout complex UIs.
MVVM with Combine
Learn how to share data between different views with the new Combine framework, trigger UI updates with SwiftUI, and build the app with MVVM.
Animating Views
Animations play a key role in modern mobile apps. SwiftUI made it very easy to animate objects and view transitions. You will learn how to create fluid animated effects with implicit and explicit animations.

Stable Diffusion Mac App and More Sample Projects with the Pro Package

Not only can you use SwiftUI to build iOS apps, you can apply the same knowledge gained from the course to build macOS apps.
The pro package comes with a detailed tutorial and a complete Xcode project, showing you how to build a Mac app with the text-to-image functionality using Stable Diffusion.
The pro package also provides 4 extra Xcode projects including RSS App Template (UIKit), Subscription App Template (UIKit), Photo App Template (SwiftUI), and CMS App Template (SwiftUI).
I can legitimately say that if it wasn't for AppCoda, I don't know if I could have gotten a job as an iOS developer and maintain that job. That is how significant AppCoda has been to my career. You don't need any other books if you're looking to start into iOS.
Strick Tech
Mobile Developer

What's Inside?

Content Basic Starter Pro
Mastering SwiftUI Ebook in PDF, ePub & mobi format + Project Source Code Included Included Included
Mastering SwiftUI Ebook in HTML format N/A Included Included
Beginning iOS Programming with Swift for SwiftUI & UIKit Two ebooks in PDF, ePub, mobi & HTML format + Project Source Code
This is our flagship book that teaches you how to build a real world app from scratch using Swift, SwiftUI, and UIKit. It is a good companion book if you want to dive deeper into iOS app development.
N/A Included Included
App Design Resources Sheet for Developers A PDF document showing you how to use online resources to improve your app design N/A Included Included
iOS Screenshot Design Guide for Developers Ebook in PDF format showing you how to create beautiful screenshots for app preview on App Store N/A N/A Included
Intermediate iOS 16 Programming with Swift Ebook in PDF, ePub, mobi & HTML format + Over 40 Projects
Learn to master more iOS APIs and third party libraries by working on over 40 app projects with this intermediate book. All projects will be migrated to SwiftUI and provide you as a free update.
N/A N/A Included
Stable Diffusion App with SwiftUI A sample Xcode project showing you how to build a Mac app with SwiftUI and Stable Diffusion N/A N/A Included
RSS app template Full source code of an RSS app built using UIKit N/A N/A Included
Subscription app template Full source code of a Subscription Management app built using UIKit N/A N/A Included
Photo app template Full source code of a Photo app built using SwiftUI and Unsplash API N/A N/A Included
CMS app template Full source code of a CMS app built using SwiftUI and Airtable API N/A N/A Included
Motion Bar A collection of beautifully designed tab bar views with full source code N/A N/A Included
1 Year Free Update Free book updates for your first year of purchase Included Included Included
Priority Email Support Our support team will answer your questions related to the books/course in 24 business hours N/A N/A Included
I tried multiple learning sources including the Stanford training. Although I already did learn some topics like auto layout, delegates, segues, etc through other sources, your book was the first one that really made me understand them!
Nico van der Linden
The Beginning iOS Programming with Swift textbook is extremely easy to follow and really helps set the framework for developing apps for your own needs.
Mark Mueller

Ready to Get Started?

Save up to 20% off the regular price.
The sale ends on 30 Jun 2024 (23:59 PST).
$ 49
$ 79
Everything included in the basic package, plus the following
$ 199
Everything included in the starter package, plus the following
  • Mastering SwiftUI eBook (PDF/ePub/Mobi)
  • Full source code included
  • 1 year free update
  • Access to our private Facebook/Slack group
  • Mastering SwiftUI eBook (HTML)
  • Beginning iOS Programming with Swift and UIKit eBook (PDF/ePub/Mobi/HTML)
  • Beginning iOS Programming with Swift and SwiftUI eBook (PDF/ePub/Mobi/HTML)
  • App Design Resources Sheet for Developers (PDF)
  • Intermediate iOS 16 Programming with Swift eBook (PDF/ePub/Mobi/HTML)
  • Over 40 additional Xcode projects with full source code
  • Full source code of the Stable Diffusion Mac App included
  • Full source code of the RSS & Subscription app (UIKit) included
  • Full source code of the Photo & CMS app (SwiftUI) included
  • MotionBar with full source code included
  • iOS Screenshot Design Guide for Developers (PDF)
  • Priority email support

What People Say About the Book

I am enrolled in several online courses about SwiftUI but I consider your book the best ever for clarity and completeness.
Gives a good foundation by delivering the basics. Then building on with the advanced items and engineer real applications to show how all the elements work. It is as complete as a book can be and builds confidence, knowledge and skills.
Jean Claude Neerunjun
This book is every bit as good as the books from the "Beginning iOS Programming" collection when it comes to explanation and understanding. By the time writing this review, I finished one third of the book after two days reading and coding its examples. It is amazing how this book trapped me.
The concepts of SwiftUI been explained in a smooth and plain way, with great App examples to show how to use those concepts in a real app.
Qiang Ma
After working through the majority of the book but then having an unintentional break before going back to SwiftUI, I found the structure of the book meant I could easily refer back to specific concepts/code that I got stuck on.
Andi Elliott
So far the book has been amazing. Due to work needs, I needed to be as functional as possible in SwiftUI in 2 weeks and this book helped me to have fluency in handling important issues.

Your questions answered

What version of Xcode and iOS do you support?
All the content and source code of the ebooks will support Xcode 15, Swift 5.9 (or up), and iOS 17. Presently, the Mastering SwiftUI book has been fully updated for iOS 17. The rest of the books will be updated for the latest version of iOS and Xcode by end 2023. Free updates will be available. During the first year of your purchase, we will continue to update the books and release them as free updates for eligible customers.
Can I pay via PayPal?
Absolutely! After clicking the Buy button, simply select Paypal to proceed with the payment. Alternatively, you can just send the payment in USD to [email protected]. You'll receive a download link of the package within 24 hours. Or simply email us at [email protected] and tell us which package you want to buy.
Can I reuse the source code?
Absolutely! You are allowed to reuse the source code in your own projects (personal/commercial). However, you're not allowed to distribute or sell the source code without prior authorization.
Will I get free update?
Yes! The update applies to all packages. Once you purchase the book, you will get free updates for 1 year. Every time Apple releases a new version of SwiftUI, we will ensure that the book supports the latest version of Swift and Xcode.
Do I need to learn Swift before learning SwiftUI?
Yes, you still need to know the Swift programming language before using SwiftUI. SwiftUI is just a UI framework written in Swift. Our "Beginning iOS Programming with Swift" book can help you get started.
Should I learn SwiftUI or UIKit?
The short answer is Both. That said, it all depends on your goals. If you target to become a professional iOS developer and apply for a job in iOS development, you better equip yourself with knowledge of SwiftUI and UIKit. On the other hand, if you just want to develop an app for your personal or side project, you can develop it entirely using SwiftUI. However, since SwiftUI is very new, it doesn't cover all the UI components that you can find in UIKit. In some cases, you may also need to integrate UIKit with SwiftUI.
How can I get the book updates?
Whenever we update the learning materials, we will send you an email notification with the download instructions.
Still have questions?
No problem! Just send your question to [email protected]. We will do our best to answer them.