Ready-to-run demo apps for trying LookInside on iOS, tvOS, watchOS, and macOS.
Seven apps live here. Each opens on a Welcome screen with the setup steps and the live license state, then shows a set of demos. Run one, open LookInside on your Mac, and inspect the live UI.
The iOS and macOS apps show the same three demos — Music, Feed, and Chat — built three different ways. Because the screens match, you can load the SwiftUI app and the native app side by side and compare exactly what each hierarchy looks like in the inspector.
The two Apple TV apps do the same for tvOS: Music and Feed, rebuilt for the remote — rows of focusable cards that scroll sideways — once in SwiftUI and once in UIKit. Chat is left out; nobody types on a TV.
The two Apple Watch apps show Now Playing, Playlists, Feed, and Controls on a watch-sized list, once in SwiftUI and once with WatchKit storyboards. Neither framework lets an app touch UIKit, yet on watchOS both are drawn by UIKit views — PepperUICore's and WatchKit's own — and LookInside shows that layer as well as the SwiftUI one.
The native apps additionally ship a Controls screen: a gallery of the stock UIKit / AppKit controls — buttons, text inputs, sliders, steppers, progress indicators, pickers, and a card drawn by a bare CALayer sublayer — so there is a rich, varied hierarchy to point the inspector at. The tvOS version holds the controls tvOS has.
| App | Platform | Built with |
|---|---|---|
LookInsideExample |
iOS + macOS | SwiftUI |
LookInsideExampleUIKit |
iOS | UIKit only — no import SwiftUI |
LookInsideExampleAppKit |
macOS | AppKit only — no import SwiftUI |
LookInsideExampleTV |
tvOS | SwiftUI |
LookInsideExampleTVUIKit |
tvOS | UIKit and TVUIKit only — no import SwiftUI |
LookInsideExampleWatch |
watchOS | SwiftUI |
LookInsideExampleWatchKit |
watchOS | WatchKit storyboards only — no import SwiftUI |
The native apps are written the long way on purpose: hand-built view controllers, Auto Layout constraints, Core Animation layers, view-based table views, and a code-built menu bar on the Mac. That is the shape most real apps have, and the shape the inspector was built for. The tvOS UIKit app adds compositional collection views and TVUIKit's media item and monogram cells, the building blocks of most Apple TV apps.
SwiftUI app:
make run # iOS Simulator
make run-mac # this MacUIKit app (iOS Simulator):
make run-uikitAppKit app (this Mac):
make run-appkitApple TV apps (Apple TV Simulator):
make run-tv # SwiftUI
make run-tv-uikit # UIKitThey use the Apple TV 4K (4th generation) simulator that Xcode creates, preferring a booted one; pick another with TV_SIMULATOR_NAME="Apple TV 4K (4th generation) (at 1080p)" make run-tv. The tvOS simulator runtime is a separate download in Xcode › Settings › Components.
Apple Watch apps (Apple Watch Simulator, watchOS 26 or later):
make run-watch # SwiftUI
make run-watchkit # WatchKitThey use the Apple Watch Series 12 (46mm) simulator, preferring a booted one; pick another with WATCH_SIMULATOR_NAME. Launched with -demo NowPlaying (or Playlists, Feed, Controls), for example xcrun simctl launch booted app.lookinside.example.watch -demo Controls, an app opens that demo straight away.
You can also open LookInsideExample.xcodeproj in Xcode, pick a scheme, and press Run.
LookInside finds a running app on its own: over TCP loopback in the iOS, Apple TV, and Apple Watch Simulators and on this Mac (ports 47164–47169), or over USB on a connected device (ports 47175–47179). The tvOS apps have been checked in the Apple TV Simulator only; an Apple TV has no USB port for LookInside to reach it through. The watchOS apps have been checked in the Apple Watch Simulator only; on a real Apple Watch the server stays idle, because watchOS does not let an app accept LookInside's connection.
make build-sim # SwiftUI app, iOS Simulator
make build-mac # SwiftUI app, Mac
make build-uikit # UIKit app
make build-appkit # AppKit app
make build-tv # SwiftUI app, Apple TV Simulator
make build-tv-uikit # UIKit app, Apple TV Simulator
make build-watch # SwiftUI app, Apple Watch Simulator
make build-watchkit # WatchKit app, Apple Watch Simulator
make build-all # all sevenRun make help for the full target list.
| Path | What it is |
|---|---|
Sources/LookInsideExampleApp/ |
The SwiftUI iOS and macOS app |
Sources/LookInsideExampleUIKit/ |
The pure-UIKit iOS app |
Sources/LookInsideExampleAppKit/ |
The pure-AppKit macOS app |
Sources/LookInsideExampleTV/ |
The SwiftUI tvOS app |
Sources/LookInsideExampleTVUIKit/ |
The pure-UIKit tvOS app |
Sources/LookInsideExampleWatch/ |
The SwiftUI watchOS app |
Sources/LookInsideExampleWatchKit/ |
The WatchKit storyboard watchOS app |
Sources/DemoShared/ |
Demo fixtures shared by the native, tvOS, and watchOS apps, plus the server runtime bridge |
LookInsideExample.xcodeproj |
The Xcode project |
Project.swift |
Tuist project setup |
Configuration/ |
Build settings |
LookInside continues the work of LookinServer, the original iOS view debugger runtime.
This project is sponsored by AirBuild.