Skip to Content

iOS (Swift) SDK

Install Using Swift Package Manager (requires Xcode 12+)

  1. In Xcode, select File > Swift Packages > Add Package Dependency.
  2. Paste the URL https://github.com/spindl-xyz/spindl-ios/ and a minimum semantic version of v1.0.1. You can see in the tags sections , our latest releases.

Initialize SDK

Initialize the SDK with your API key upon launching the app, usually in the AppDelegate, or App protocol implementor:

import SpindlSDK struct MyApp : App { init() { Spindl.initialize("<your API key goes here>") } ... }

Track Events

Track events with the track method:

  • name is required
  • properties are optional
private func myButtonTappedExample() async throws { try await Spindl.shared.track(name: "myButtonTapped", properties: ["view":"MyFancyView","otherProperty":"Another one"]) ... }

Identify Users

Once customers enter their customer ID (such as email) and/or wallet information (e.g., after logging in), connect that to the analytics by calling the identify method of the Spindl singleton:

private func saveUserIdentityExample(wallet: String?, email: String?) async throws { try await Spindl.shared.identify(walletAddress: wallet, customerUserId: email) ... }