Skip to content

SwiftUI macOS app to view and inspect provisioning profiles (.mobileprovision) with device and team details.

Notifications You must be signed in to change notification settings

azisramdhan/ProvisionKit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ProvisionKit

ProvisionKit is a simple macOS utility built with SwiftUI to help developers inspect and browse their local provisioning profiles. It provides a user-friendly interface for viewing metadata such as UUIDs, team identifiers, expiration dates, and the list of provisioned devices.

✨ Features

  • πŸ“‚ Select a folder containing .mobileprovision files
  • 🧾 Display detailed information for each provisioning profile:
    • Profile name
    • UUID
    • Team Identifier
    • Creation and expiration dates
    • Associated devices (with search support)
  • πŸŒ“ Dark Mode support
  • πŸ–±οΈ Native SwiftUI experience with sidebar navigation

πŸ“Έ Preview

Here’s how the UI looks:

Select Provisioning Profiles Folder

Select Provisioning Profiles Folder

Profiles Sidebar & Device Detail

Profiles Sidebar and Device Detail

πŸš€ Getting Started

Requirements

  • macOS 13.0+
  • Xcode 15+
  • Swift 5.9+

Build & Run

  1. Clone the repository:
git clone https://github.com/azisramdhan/ProvisionKit.git
cd ProvisionKit
  1. Open the Xcode project:
open ProvisionKit.xcodeproj
  1. Run the app using the macOS target (Cmd + R)

πŸ›  How It Works

ProvisionKit reads .mobileprovision files from the selected folder (default suggestion: ~/Library/MobileDevice/Provisioning Profiles) and parses them using Apple's PropertyListSerialization to extract profile data.

Extracted Metadata Includes:

  • Name: The name of the provisioning profile
  • UUID: Unique identifier of the profile
  • TeamIdentifier: Your Apple Developer Team ID
  • CreationDate / ExpirationDate
  • ProvisionedDevices: List of device UDIDs (if applicable)

🧩 Folder Access Prompt

The app uses NSOpenPanel to prompt the user to select a directory. It defaults to ~/Library/MobileDevice/Provisioning Profiles for convenience.

πŸ“‚ Folder Structure

ProvisionKit/
β”œβ”€β”€ ProvisionKitApp.swift
β”œβ”€β”€ ContentView.swift
β”œβ”€β”€ ProfileInfo.swift
β”œβ”€β”€ ProvisioningProfileLoader.swift
└── DeviceDetailView.swift

πŸ“ License

This project is open source and available under the MIT License.


πŸ™‹β€β™‚οΈ Author

Azis Ramdhan β€” @azisramdhan

Feel free to open issues or submit pull requests!

About

SwiftUI macOS app to view and inspect provisioning profiles (.mobileprovision) with device and team details.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages