NetworkMonitor

0.0.2

NetworkMonitor wraps NWPathMonitor into an Obervable object.
0xWDG/NetworkMonitor

What's New

0.0.2

2026-06-15T19:13:46Z

General improvements

Full Changelog: 0.0.1...0.0.2

NetworkMonitor

NetworkMonitor wraps NWPathMonitor into an observable object.

Swift Package Manager License

Requirements

  • Swift 5.8+
  • iOS 13.0+, iPadOS 13.0+, macOS 11.0+, tvOS 13.0+, visionOS 1.0+, watchOS 7.0+

Installation (Package.swift)

dependencies: [
    .package(url: "https://github.com/0xWDG/NetworkMonitor.git", branch: "main"),
],
targets: [
    .target(name: "MyTarget", dependencies: [
        .product(name: "NetworkMonitor", package: "NetworkMonitor"),
    ]),
]

Installation (Xcode)

  1. In Xcode, open your project and navigate to File โ†’ Swift Packages โ†’ Add Package Dependency...
  2. Paste the repository URL (https://github.com/0xWDG/NetworkMonitor) and click Next.
  3. Click Finish.

Usage

import SwiftUI
import NetworkMonitor

struct ContentView: View {
    @StateObject
    private var network = NetworkMonitor()

    var body: some View {
        VStack {
            Text("Hello!")
            Text("The network status is \(network.isConnected ? "Connected" : "Disconnected")")
            Text("You are using a \"\(network.isExpensive ? "Expensive" : "Normal")\" internet connection")

            HStack(spacing: 0) {
                Text("You are using \"")
                switch (network.networkType) {
                case .cellular:
                    Text("Cellular")
                case .wifi:
                    Text("Wi-Fi")
                case .loopback:
                    Text("Loopback")
                case .other:
                    Text("Other")
                case .wiredEthernet:
                    Text("Wired")
                default:
                    Text("Unknown")
                }
                Text("\" to connect to the internet")
            }
        }
    }
}

Contact

๐Ÿฆ‹ @0xWDG ๐Ÿ˜ mastodon.social/@0xWDG ๐Ÿฆ @0xWDG ๐Ÿงต @0xWDG ๐ŸŒ wesleydegroot.nl ๐Ÿค– Discord

Interested learning more about Swift? Check out my blog.

Description

  • Swift Tools 5.8.0
View More Packages from this Author

Dependencies

  • None
Last updated: Sun Jun 21 2026 01:54:21 GMT-0900 (Hawaii-Aleutian Daylight Time)