← Back
Mak5er

Mak5er/AirCard-iOS

Apple Wallet card skins and lock screen passcode themes on iOS 27.

View on GitHub ↗
Stars
1.4K
Forks
157
Watchers
1.4K
Open issues
38
Contributors
3
Language
Swift
License
MIT License
Default branch
main
Created Sep 19, 2026Updated Sep 20, 2026

Star growth

Today—
This week—
This month—

Star history will appear here once this repo has been tracked for a couple of days.

README

AirCard-iOS

AirCard-iOS Icon

Apple Wallet card skins, lock screen passcode themes, and PosterBoard wallpapers directly on iOS 27+.

Platform Swift Rust License Donate with PayPal

Overview

AirCard-iOS customizes Apple Wallet card artwork, lock screen passcode dialers, and lock screen wallpapers on device without a jailbreak.

The app communicates with internal system services over a local loopback tunnel (10.7.0.1 or 127.0.0.1) provided by LocalDevVPN. File operations are handled by AirliftFFI, a Rust library that interfaces with the AirTraffic service.

Compatibility: AirCard-iOS currently requires iOS 27.0 or newer (iOS 27+).

Features

Apple Wallet card skins

  • Writes custom card artwork to Passbook caches (cardBackgroundCombined@3x.png, @2x.png, and cardBackgroundCombined.pdf for transit cards like Suica).
  • Flushes front-face and thumbnail caches so new artwork appears immediately when Wallet opens.
  • Detects card identifiers in real time when you bring up Apple Pay.
  • Apply artwork to individual cards or batch-flash every detected card.

Passcode dialer themes

  • Live dialer preview with touch panning and zoom framing.
  • Full poster layout across all ten buttons, or individual circular button cutouts.
  • Targets system dialer caches (TelephonyUI-10).
  • Localized number subtext options, including Ukrainian and Russian Cyrillic layouts.
  • Import and export themes as .passthm files.

PosterBoard wallpapers (.tendies)

  • Import and unpack .tendies wallpaper archives directly from the Files app.
  • Auto-detects PosterBoard wallpaper containers and active descriptor UUIDs.
  • Injects wallpaper configurations and assets into PosterBoard storage.
  • Automatically triggers a NeoSpring respring after flashing to apply wallpapers without rebooting your iPhone.

On-device pairing

  • Advertises locally over Bonjour so the phone can pair with itself via Settings > Privacy & Security > Developer Mode > Pair with AirCard-iOS.
  • Reads and syncs pairing records automatically into aircard_pairing.plist.
  • Once paired, no computer or external connection is needed.

Prerequisites

  1. iOS 27+: The exploit and paths currently target iOS 27.0 and above.
  2. LocalDevVPN: Running in loopback mode (10.7.0.1 or 127.0.0.1) so local connections can reach internal device services.
  3. Developer Mode pairing: Pair directly in Settings > Privacy & Security > Developer Mode > Pair with AirCard-iOS, or place an existing pairing plist in the app's documents directory.

Installation

Install AirCard-iOS.ipa using your preferred sideloading method:

  • SideStore or AltStore
  • TrollStore
  • LiveContainer
  • Xcode or iOS App Signer

Building from source

Requirements

  • macOS 14.0 or newer with Xcode 16 or newer
  • XcodeGen (brew install xcodegen)
  • Rust toolchain (only needed if rebuilding rust-core)

Build the IPA

git clone https://github.com/mak5er/AirCard-iOS.git
cd AirCard-iOS
./build-ipa.sh

The completed package is written to build/AirCard-iOS.ipa.

Rebuilding the Rust framework

To compile changes in rust-core:

./build-ios.sh

Repository structure

AirCard-iOS/
├── ios-app/                   # SwiftUI application
│   ├── AirCardApp.swift       # App entry point and lifecycle
│   ├── AppViewModel.swift     # State management and exploit orchestration
│   ├── ContentView.swift      # Main UI views
│   ├── TendiesView.swift      # PosterBoard wallpaper view
│   ├── TendiesEngine.swift    # Tendies extraction and injection logic
│   ├── RespringHelper.swift   # NeoSpring WebKit respring implementation
│   ├── Models.swift           # Image slicing, theme layout, archive packing
│   ├── PairingController.swift# Bonjour host and pairing sync
│   ├── NetworkStatus.swift    # VPN loopback detection
│   ├── Utilities.swift        # Background keep-alive and helper functions
│   ├── GrappaHelper.[h,m]     # ATC protocol helpers
│   ├── Info.plist             # Bundle configuration
│   └── Assets.xcassets/       # App icons and image sets
├── AirliftFFI.xcframework/    # Compiled arm64 Rust static library and headers
├── rust-core/                 # Rust core source code
├── project.yml                # XcodeGen project definition
├── build-ipa.sh               # IPA build script
├── build-ios.sh               # Rust framework build script
├── LICENSE                    # MIT License
└── README.md                  # Project documentation

Credits

  • @mak5er: Lead developer, UI, passcode theming, Tendies engine, on-device pairing.
  • @merybist: Initial base port.
  • AirLift by 0xjohnny (@0xjohnnydev): AirTraffic and ATAirlock sandbox escape research underlying AirliftFFI.
  • NeoSpring: Swift implementation by @skadz108 and @rooootdev, and @neonmodder123 for the WebKit GPU process respring technique.
  • Built upon concepts from the AirCard project.

Support

If you want to support AirCard-iOS development:

  • PayPal: Donate via PayPal
  • TON: UQBm9KPhtMw-XVVjirUoa09wzrlyWsbeZhKfefl1Uw-qNZ-r
  • USDT (TRC20): TDkDMCyjYxgvkWUnQiF5Erk2RyPQMT6G1n
  • USDT / BNB (BEP20): 0x0954dc491c502849d04956ef74634aa5931a08e8

License

MIT License. See LICENSE for details.