tolgataner/navflow
**NavFlow** is a Swift Package that provides customizable navigation containers and navigation bars for SwiftUI applications. You can easily create your view a navigation bar and use it with either **push** or **sheet** navigation flows.
Overview
Navigation bar screenshots designed with NavFlow
<p align="center"> <img src="https://github.com/user-attachments/assets/5c1c6c03-abe9-419c-bd17-8c1de26507a0" alt="Screenshot 1" width="180" /> <img src="https://github.com/user-attachments/assets/315235be-ab5e-4b55-b7c7-f47502b30ea8" alt="Screenshot 4" width="180" /> <img src="https://github.com/user-attachments/assets/e3251ac2-4bf8-417f-aac8-83c4402fccc0" alt="Screenshot 2" width="180" /> <img width="180" src="https://github.com/user-attachments/assets/b9063730-1325-48ef-8bff-ee3fdfe3a68f" alt="Screenshot 5" /> </p>
β¨ Features
- π Custom Navigation Bar β Provide any SwiftUI view as a navigation bar.
- π± iOS Support β Includes UIKit-based navigation bar height calculation.
- π Push & Sheet Navigation β Works with both
NavigationLinkand.sheet. - π Dynamic or Standard Height β Use
StandardNavigationHeightorDynamicNavigationHeight.
π¦ Installation
Swift Package Manager (SPM)
In Xcode: Go to File β Add Packagesβ¦ and enter the repo URL:
https://github.com/TolgaTaner/NavFlow.gitOr add it directly to your Package.swift:
dependencies: [
.package(url: "https://github.com/TolgaTaner/NavFlow.git", from: "1.2.4")
]π§ Usage
import NavFlow
import SwiftUI
struct ContentView: View {
@State private var navigationPath = NavigationPath()
var body: some View {
NavFlowNavigationBarView(
path: $navigationPath,
backgroundColor: .blue,
navigationBarHeight: StandardNavigationHeight()
) {
/// Custom View For Navigation Bar
HStack {
Text("Back").foregroundColor(.white)
Spacer()
Text("Home").bold().foregroundColor(.white)
Spacer()
Button("Edit") { /* action */ }.foregroundColor(.white)
}
} content: {
VStack {
Text("Main content here")
.padding()
}
}
}
}Package Metadata
Repository: tolgataner/navflow
Default branch: main
README: README.md