Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 

Repository files navigation

Netsight

A clean, professional network scanner and toolkit for iOS, built with SwiftUI, SwiftData, and iOS 26's Liquid Glass design language.

Netsight discovers the devices on your local network, identifies what they are, maps the topology, and gives you a toolkit of real networking utilities — ping, port scanning, DNS lookup, traceroute, Wake-on-LAN, and more — all wrapped in an Apple-quality, first-party-feeling UI.

Features

  • Scan — discover every device on your LAN with a live results feed. Smart device identification via Bonjour/mDNS, SSDP/UPnP, hostname analysis, port fingerprinting, and MAC OUI lookup when iOS exposes a MAC address.
  • Map — an interactive, deterministic network topology graph rendered with glass nodes.
  • Tools — ping, port scanner, DNS lookup, traceroute, Wake-on-LAN, "Who's on my WiFi", and a speed test.
  • Devices — a persistent inventory of every device ever discovered, searchable and filterable with native menu selectors, backed by SwiftData.
  • Detail — per-device deep dive with quick actions (ping, open web UI, SSH, camera, WoL), open-port listing, notes, and custom naming.

Requirements

  • Xcode 26+ and the iOS 26 SDK (uses the native .glassEffect() Liquid Glass APIs).
  • A physical device for full network scanning (Bonjour, SSDP, and TCP scanning are limited in the Simulator).

Building

The Xcode project is generated from project.yml via XcodeGen:

brew install xcodegen   # if needed
xcodegen generate
open Netsight.xcodeproj

Or from the command line:

xcodebuild build -scheme Netsight \
  -destination 'platform=iOS Simulator,name=iPhone 17 Pro'

Architecture

  • Netsight/Models — NetworkDevice, DeviceType, PortResult, SwiftData models.
  • Netsight/Services — NetworkScanner, DeviceIdentifier, PaywallManager.
  • Netsight/Networking — low-level Network-framework scanning primitives.
  • Netsight/Views — SwiftUI views, organized by feature (Scanner, Visualization, Tools, Detail, Special, Components).
  • Netsight/Utilities — design system, haptics, OUI lookup, networking helpers.

Notes on iOS constraints

iOS restricts raw ICMP sockets, so ping is implemented as a TCP connect probe. Full SSH (PTY + ANSI) and VLCKit-based RTSP playback are noted as v2 follow-ups; native fallbacks (TCP command channel, AVPlayer/MJPEG) are used where Apple frameworks allow.

iOS does not expose the kernel ARP table to sandboxed third-party apps, so Netsight cannot reliably retrieve MAC addresses or OUI manufacturers for other devices on the LAN. Device identity uses macAddress ?? ipAddress: the MAC is preferred when available, and IP address fallback is expected for most remote hosts on iOS. The current iPhone's own interface MAC is shown when getifaddrs exposes it.

iOS also gates Wi-Fi SSID access behind the Access WiFi Information entitlement (com.apple.developer.networking.wifi-info) and location permission. Netsight ships the entitlement and requests when-in-use location before reading the current network name; if the device is on Wi-Fi but iOS still withholds the SSID, the app shows "Unknown Network" instead of treating it as disconnected. When NEHotspotNetwork also provides a BSSID, Netsight shows it as the connected access point and labels a matching scanned device when its MAC address is available.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors