{"repo":"hmlongco/Navigator","free":true,"listed":false,"github":"https://github.com/hmlongco/Navigator","clone":"git clone https://github.com/hmlongco/Navigator.git","description":"Advanced Navigation Support for SwiftUI.","language":"Swift","stars":538,"topics":["architecture","navigation","swiftui"],"license":"MIT","category":"mobile-apps","readme_excerpt":"Advanced Navigation Support for SwiftUI. Navigator 2.1.3 Navigator provides SwiftUI with a simple yet powerful navigation layer based on NavigationStack. This is not just another push/pop navigation stack library. It supports... Simple and easy navigation linking and presentation of views. Coordination patterns with well-defined separation of concerns. Extensive support for modular applications including cross-module navigation and views. True deep linking and internal application navigation via navigation send. Easily returning to a specific spot in the navigation tree via navigation checkpoints. Returning callback values via navigation checkpoints. Both Declarative and Imperative navigation and control. Navigation state restoration. Event logging and debugging. No navigationDestination registration operations are required. You might want to reread that last bullet point again... Navigator 2.0 is written entirely in Swift and SwiftUI, supports Observation, and runs on iOS 17 and above. The Code Defining Navigation Destinations Destinations (or routes) are typically just public lists of enumerated values, one for each view desired. SwiftUI requires navigation destination values to be Hashable , and so do we. With our enum in place, we now need to provide each destination with a variable that returns the correct view for each case. That's easy, since NavigationDestination also conforms to View ! Just provide the view body as part of the enumeration. Note how associated values ","default_branch":null,"files":null,"tree":[],"storefront":"/r/hmlongco","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/hmlongco/Navigator/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}