Skip to content


Repository files navigation


Navigation Stack is a library with stack-modeled UI navigation controller.

We specialize in the designing and coding of custom UI for Mobile Apps and Websites.

Stay tuned for the latest updates:

Twitter CocoaPods CocoaPods CocoaPods Travis codebeat badge Carthage compatible Donate


  • iOS 9.0+
  • Xcode 9


Just add the Source folder to your project.

or use CocoaPods with Podfile:

pod 'Navigation-stack'

or Carthage users can simply add to their Cartfile:

github "Ramotion/navigation-stack"


  1. YourNavigationController inherit from NavigationStack

  2. add code to root viewViewController

override func viewDidLoad() {
    navigationController!.interactivePopGestureRecognizer?.delegate = self
extension YourViewController: UIGestureRecognizerDelegate {
  func gestureRecognizerShouldBegin(gestureRecognizer: UIGestureRecognizer) -> Bool {

    if navigationController?.viewControllers.count == 2 {
      return true

    if let navigationController = self.navigationController as? NavigationStack {

    return false

📄 License

Navigation Stack is released under the MIT license. See LICENSE for details.

This library is a part of a selection of our best UI open-source projects.

If you use the open-source library in your project, please make sure to credit and backlink to

📱 Get the Showroom App for iOS to give it a try

Try this UI component and more like this in our iOS app. Contact us if interested.