Destinations

Destinations is a Swift library for UIKit and SwiftUI that is designed to remove application and business logic from your interfaces, manage navigation flow, and abstract datasource interactions so that your user interfaces can focus again on the user. It is based on a philosophy that emphasizes clear separation of concerns, that each significant View or UIViewController in an app should not know about each other, and that UI and functionality should be able to be easily substituted as your needs change.

  • Enables clean separation of concerns between your interfaces, datasources, and other application logic
  • Allows you to easily replace UI and datasources for A/B testing or providing testing mocks
  • Provides easy deep linking capability
  • Provides the ability to display and test sections of your apps in isolation
  • A flexible and extensible, protocol-based system to fit your project’s needs, including custom UI
  • A similar API for both UIKit and SwiftUI, and generic enough to allow further platform support
  • Comes with common framework implementations, but extensible enough to provide your own
Check out Destinations on GitHub for more detailed explanations and examples!

Created by Brett Walker.
© 2024 Poet & Mountain, LLC. All rights reserved. Licensed under the MIT License.