SwiftUI Field Guidebeta


We built this website to explain how the SwiftUI layout system works, and we hope you find it useful. We welcome any feedback, positive or negative, so please send us an email if you have anything to share.

We aren't explicitly aiming to cover the full SwiftUI API, rather we want to focus on the fundamental layout concepts. We're planning to build out this site over the next few months, and in the near future, we're hoping to create similar sites for other SwiftUI topics as well. To stay updated, please subscribe to our mailing list, or follow us on Mastodon.

To make the examples work, we ported large parts of SwiftUI's layout system to TypeScript. While we've tested our implementation extensively, there might still be discrepancies between SwiftUI's behavior and what you see here. If you spot something, let us know and we'll fix it. Fun fact: The interactive explanations (e.g. on the HStack page) are done in our port of SwiftUI as well.

The SwiftUI Field Guide was built by Chris Eidhof and designed by Nicholas Christowitz.

A lot of it is based on years of work teaching SwiftUI workshops and writing about SwiftUI over at objc.io. If your team is interested in a workshop, please get in touch.