With the NetworkExtension framework, you can customize and extend the core networking features of iOS and macOS. Specifically, you can:
Change the system’s Wi-Fi configuration
Integrate your app with the hotspot network subsystem (Hotspot Helper)
Create and manage VPN configurations, using the built-in VPN protocols (Personal VPN) or a custom VPN protocol
Implement an on-device content filter
Implement an on-device DNS proxy
The NetworkExtension framework is available in macOS and iOS, but not all features are available on both platforms and some features have specific restrictions (for example, some features only work on supervised iOS devices). The documentation for each feature describes these restrictions.
User defined runtime attributes are the hidden gem of Xcode’s Interface Builder. Available since Xcode 4 and iOS 5, they provide the ability to configure properties of a view that you would otherwise be unable to configure in Interface Builder.