hiimtmac / pass-kit

Apple Wallet Pass helpers
4 stars 0 forks source link

PassKit

Generate PassKit passes without external dependencies like openssl

Installation

dependencies: [
    .package(url: "https://github.com/hiimtmac/pass-kit.git", .branch("main"))
],

[!Warning] This is a pre-release and is subject to change

Usage

import PassCore
import PassGen

let pass: Pass = ...
let cert: Data = ...
let key: Data = ...

let generator = try PassGenerator()

// add pass
try generator.add(pass: pass)

// add image
try generator.add(image: Data(...), as: .icon(.x2))
// add localized image
try generator.add(image: Data(...), as: .icon(.x2), localization: "en")
// add strings
try generator.add(strings: Data(...), localization: "en")
// generate manifest
let manifest = try generator.manifestData()
try generator.add(manifest: manifest)
// generate signature
let signature = try generator.signatureData(manifest: manifest, cert: cert, key: key)
try generator.add(signature: signature)
// get zip data
let archive = try generator.archiveData()
// save as Something.pkpass and distribute

More