rohijulislam/networkmonitorkit
*A simple Swift package to monitor network connectivity using `NWPathMonitor`.*
π Features
β
Detects real-time network connectivity changes. β
Supports Wi-Fi, Cellular, Ethernet, and Loopback interfaces. β
Provides details like IPv4/IPv6 support and DNS availability. β
Uses AsyncStream for easy async monitoring.
Installation
Using Swift Package Manager (SPM)
- Open Xcode, go to File β Add Packages.
- Enter the repository URL: https://github.com/Rohijulislam/NetworkMonitorKit.git
- Select Add Package and import it into your project:
import NetworkMonitorKitπ οΈ Usage
1οΈβ£ Start Monitoring Network Status
let networkMonitor = NetworkMonitorKit()
networkMonitor.startMonitoring()2οΈβ£ Check if Network is Available
if networkMonitor.isNetworkAvailable {
print("β
Network is available")
} else {
print("β No network connection")
}3οΈβ£ Get Connection Details
let details = networkMonitor.connectionDetails
print("Interface Type: \(details.interfaceType)")
print("Supports IPv4: \(details.supportsIPv4)")
print("Supports IPv6: \(details.supportsIPv6)")4οΈβ£ Monitor Network Status Asynchronously
Task {
for await status in networkMonitor.monitorNetworkStatus() {
print("π Network status changed: \(status)")
}
}License
This package is released under the MIT License.
Package Metadata
Repository: rohijulislam/networkmonitorkit
Default branch: main
README: README.md