| Platform | Latest Tested | Minimum Required |
|---|---|---|
| iOS | 18.2 | 15.0+ |
| iPadOS | 18.2 | 15.0+ |
| watchOS | — | 8.0+ |
| macOS | 15.2 | 14.0+ |
| visionOS | 2.1 | 1.0+ |
| tvOS | 18.2 | 17.0+ |
| Tool | Version |
|---|---|
| Xcode | 15.0+ |
| macOS host | 14.0+ |
| Swift | 5.9 / 6.1+ |
| Feature | iOS | iPadOS | watchOS | macOS | visionOS | tvOS |
|---|---|---|---|---|---|---|
| Basic presentation | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Mesh gradients | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Glass effects | ✅ | ✅ | Fallback | ✅ | ✅ | ❌ |
| Drop notifications | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
| History navigation | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Remote JSON | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Remote update screen | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Special effects | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Auto-versioning | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
watchOS uses compact current-version, history, and update layouts automatically. Release-note descriptions and Search controls are hidden by default to save vertical space, while titles, subtitles, and icons remain visible; pass showDescription: true or search: true to opt in. watchOS 8–9 use solid fallbacks for the Material backgrounds used by SwiftNEW, watchOS 10 adds those Material backgrounds, and watchOS 11 adds native MeshGradient; older versions retain the layered gradient fallback. Animation particle counts and liquid-mesh refresh rates are reduced on Apple Watch.
For a companion Watch app, SwiftNEW uses WKCompanionAppBundleIdentifier automatically when it is present. Pass appStoreBundleIdentifier only when the App Store listing identifier still needs an explicit override. Local data.json files must be included in the Watch target itself.
On iOS 15 and later, an approved CarPlay host app can use SwiftNEWCarPlayTemplateFactory to present update content that directly supports its approved in-car category as a native CPListTemplate. Loading and loaded templates can expose a trailing Continue button whose host callback replaces the release-note root with the app's native CPTemplate; CarPlay cannot display the phone's SwiftUI ContentView. With includesHistory: true, a History/Return button switches the same root list between current and older releases. Keeping History on the same root and replacing that root on Continue preserves a two-level release-note hierarchy. A general product changelog is not automatically eligible. CarPlay is an iOS integration rather than a separate SwiftPM platform, so no additional package platform or dependency is required.
The host app must supply its approved CarPlay entitlement and provisioning profile, plus a scene manifest or programmatic scene registration and a CPTemplateApplicationSceneDelegate. SwiftNEW does not add these app-level capabilities. The Demo contains Apple's approved CarPlay Driving Task entitlement and an integration harness for exercising the local package. Package consumers must configure the category Apple approved for their own host app. See CARPLAY.md for the complete setup and Demo test flow.
SwiftNEW is distributed via Swift Package Manager.
- File → Add Package Dependencies…
- Paste the package URL:
https://github.com/1998code/SwiftNEWKit - Choose a version rule (typically
Up to Next Major). - Add the
SwiftNEWlibrary to your target.
| Step | Screenshot |
|---|---|
| 1. Open project | ![]() |
| 2. Select target | ![]() |
| 3. Package Dependencies tab | ![]() |
| 4. Add package | ![]() |
dependencies: [
.package(url: "https://github.com/1998code/SwiftNEWKit", from: "27.3.0")
]import SwiftNEW
SwiftNEW(show: $showNew)See CONFIGURATION.md for data source setup and customization.



