Epoxy iOS

Epoxy is a suite of declarative UI APIs for building iOS UIKit apps in Swift
311
By Eric Horacek

Epoxy is a suite of declarative UI APIs that makes it easy to build rich and immersive UIKit applications in Swift. Epoxy is inspired and influenced by Airbnb's Epoxy framework on Android, as well as other declarative UI frameworks in Swift such as SwiftUI.

Epoxy and powers thousands at screens at Airbnb in apps that are shipped to millions of users. It has been developed and refined for years by dozens of contributors.

Below are a few sample screens from the Airbnb app that we've built using Epoxy. Our usages of Epoxy span from our simplest forms and static screens to our most advanced and dynamic features.

Home Details Home Photos Messaging Registration
Home Details Home Photos Messaging Registration

Epoxy includes the following declarative APIs that wrap UIKit APIs you know and love:

API Summary
EpoxyCollectionView Declarative API for driving the content of a UICollectionView
EpoxyNavigationController Declarative API for driving the navigation stack of a UINavigationController
EpoxyPresentations Declarative API for driving the modal presentations of a UIViewController
EpoxyBars Declarative API for adding fixed top/bottom bar stacks to a UIViewController