rebeloper/Navigation Kit

  • $199

STOP Using NavigationStack

Navigation Kit gives you full, declarative control over every screen and flow, so you can build apps with clarity, confidence, and zero hacks.

Jonas T., iOS Developer & Indie Maker

⭐️⭐️⭐️⭐️⭐️

I used to dread dealing with SwiftUI’s navigation. NavigationStack, sheets, fullScreenCovers… it always felt like a fragile mess. Navigation Kit gave me back control. Now everything is clean, predictable, and just works. If you’re serious about building great SwiftUI apps, you need this.

Here's a list of features Navigation Kit has to offer:
👉 Simple and unified API
👉 Decouple navigation logic from your views 🤯
👉 Supports iOS17+, macOS14+, tvOS17+, watchOS10+ and visionOS1+
👉 Supports SwiftUI5, SwiftUI6 and SwiftUI7 💎
👉 Supports Dependency Injection (move data between views easily)
👉 Access the navigation with the @Environment
👉 Easily use navigation within View Models too (MVVM)
👉 Perfect for deep links
👉 Works with TabView
👉 Easily pop to root
👉 Can pop back to any view
👉 EASY 3 step setup
👉 Supports .link, .sheet and .fullScreenCover navigation
👉 Supports .switch navigation between tabs
👉 Has .onComplete callback
👉 Works with async/await
👉 Example Xcode Project
👉 100% Documented

Liam S.

Freelance iOS Developer

“Clients expect clean navigation and fast delivery. Before Navigation Kit, I’d lose hours wrestling with SwiftUI’s quirks. And now I ship faster, with fewer bugs, and my code looks way better, too.”

Ana V.

Indie iOS Developer

“I care about code quality, and SwiftUI’s default navigation always felt like a compromise. Navigation Kit lets me write navigation that’s elegant and scalable. It feels like SwiftUI finally clicked.”

Ben K.

Lead Mobile Engineer

“After one too many navigation bugs in production, I knew I had to find a better solution, and really fast. Navigation Kit gave me peace of mind, and clean, testable flows that actually make sense.”

You don't have to be an advanced developer to start using Navigation Kit!

Step 1.

Set all your Destinations in one place.

Step 2.

Use TabsStack together with TabItemStack (or NavStack only) to set your root view.

Step 3.

Access the built in navigation through the environment.

Now comes the fun part...

Push

Push a view. Optionally add onComplete. Select the push type. Use in an async/await environment.

Pop

Pop to any view in any way you want to.

Switch Tabs

When TabStack is set up switch between tabs wherever you are in the navigation.

Deep link

Deep link to any view. Use completion handlers or async/await.

Beth R.

Senior iOS Engineer

"We build complex flows across multiple teams, and SwiftUI’s built-in navigation just couldn’t keep up. Navigation Kit brought sanity to our codebase. It's now part of our standard stack for every new project."

Marcus L.

Learning SwiftUI on the side

“As a beginner, I always felt like navigation was the part I was supposed to ‘just accept’ as messy. Navigation Kit changed that. Now I finally understand how to structure my screens the right way.

Samantha M.

Team Manager

“I’m not a dev, but I know when something slows us down. Our iOS team used to waste hours debugging navigation bugs. Since switching to Navigation Kit, we’ve shipped faster and with more confidence.

100% Documented

Every function, every variable, every line of code is thoroughly documented, so you get peace of mind what Navigation Kit does under the hood.

Xcode Project

There's an example Xcode project waiting for you with all the use cases!

Contents

Version 3.0.0

Deep linking fix

Code.zip
  • 248 KB
Resources.zip
  • 12.1 KB

Version 2.0.0

Introduced TabItemStack

Code.zip
  • 247 KB
Resources.zip
  • 11.6 KB

Version 1.0.0

Code.zip
  • 230 KB
Resources.zip
  • 9.38 KB

Compatible with:

iOS17+ ・ macOS14+・ tvOS17+・ watchOS10+ ・ visionOS1+