Skip to content

Declarative *walking* router for UI navigation in pure Swift.

License

Notifications You must be signed in to change notification settings

quickthyme/qroute

Repository files navigation

qroute QRoute

release_version build status swiftpm_compatible license

QRoute /'kyoo•root/ - n - Declarative walking router for UI navigation.

  • human readable composition of complex navigation hierarchies
  • automatic pathfinding between routes
  • declarative, test-friendly solution for driving view navigation
  • compatible with any kind of navigation
  • mediation of input dependencies

The QRoute walking router is specifically designed to handle situations where you have a hierarchical arrangement of scenes, pages, windows, or views, and you need a clean, declarative way in which to define, orchestrate, and drive sweeping, multi-step navigation routines.

QRoute will determine the nearest path and then drive your custom resolvers (the components that integrate with your particular UI navigation framework), asynchronously invoking them in the correct order, until finally arriving at the destination.


An introduction to the library and what it does.

Install and start building right away using this quick-start overview.

More details on how to use QRoute in an application can be found here.

There is an example app qroute-example-ios, written for iOS that demonstrates how one might go about using various navigation mechanisms.