iOS and iPadOS
macOS · Linux · Windows · Containers · iOS and iPadOS · Android · ChromeOS · Browser · Node (WebAssembly)
potluckdb ships three targets for iOS and iPadOS: the device, Apple silicon simulator and Intel simulator. Swift and Objective-C use potluckdb-swift. C++ links the target’s C SDK archive.
Frameworks targeting iOS reach the same runtime through their framework package. The table names the resulting languages.
Requirements
Section titled “Requirements”iOS 15 or iPadOS 15 or newer, on the device (arm64) or in the simulator (arm64 and x86_64). Xcode with Swift 5.9 or newer.
What ships
Section titled “What ships”| Language | Package | What it selects here | Pages |
|---|---|---|---|
| JavaScript | @potluckdb/potluckdb-react-native, through React Native · @potluckdb/potluckdb-capacitor, through Capacitor and Ionic | the C SDK archive of the target, in the framework’s package | Install · Quickstart |
| TypeScript | @potluckdb/potluckdb-react-native, through React Native · @potluckdb/potluckdb-capacitor, through Capacitor and Ionic | the C SDK archive of the target, in the framework’s package | Install · Quickstart |
| Swift | potluckdb from potluckdb-swift | xcframework slices ios-arm64, ios-arm64_x86_64-simulator | Install · Quickstart |
| Objective-C | potluckdb from potluckdb-swift | xcframework slices ios-arm64, ios-arm64_x86_64-simulator | Install · Quickstart |
| Dart | potluckdb, through Flutter | the requested target’s C SDK archive, verified by the build hook | Install · Quickstart |
| Flutter | potluckdb on pub.dev | the requested target’s C SDK archive, verified by the build hook | Install · Quickstart |
| C# (.NET) | potluckdb, through .NET MAUI | the C SDK archive of the target, in the framework’s package | Install · Quickstart |
| C++ | the C SDK archive | the C SDK archive of the target | Install · Quickstart |
| C | the C SDK archive | the C SDK archive of the target | Install · Quickstart |
Not shipped for this platform: Python, Java, Kotlin, Go, Rust.
| Target | xcframework slice | C SDK archive |
|---|---|---|
apple-mobile-device-arm64 | ios-arm64 | potluckdb-c-sdk-0.1.0-apple-mobile-device-arm64.zip |
apple-mobile-simulator-arm64 | ios-arm64_x86_64-simulator | potluckdb-c-sdk-0.1.0-apple-mobile-simulator-arm64.zip |
apple-mobile-simulator-x86_64 | ios-arm64_x86_64-simulator | potluckdb-c-sdk-0.1.0-apple-mobile-simulator-x86_64.zip |
Install
Section titled “Install”Add the package in Xcode through File, Add Package Dependencies, using the URL below, or in Package.swift. Objective-C applications use the same package.
dependencies: [ .package(url: "https://github.com/potluckdb/potluckdb-swift", from: "0.1.0"),],The package’s binary targets are xcframeworks from downloads.potluckdb.com. Package.swift supplies their verification checksums. The table names their device and simulator slices.
C++ links the matching target’s C SDK archive. It contains the static library, headers and C++ facade.
Remote storage. Every slice of the iOS storage xcframework contains the storage library. The Swift storage service constructors therefore work on devices as on macOS.
The application’s backend issues session credentials that are short-lived and scoped to the namespace. Supply them through the credentials callback. Compiling a credential key into an application publishes that key.
Quickstart
Section titled “Quickstart”Use the Swift quickstart on this platform. In an application, replace its temporary directory with one under the application container. Obtain it through FileManager.default.urls(for: .applicationSupportDirectory, in: .userDomainMask). Replace the directory remote with a bucket. No other line changes.
The Objective-C quickstart gives the same program in Objective-C.
Analytics
Section titled “Analytics”Analytical reads load a DuckDB library built for the device or simulator. The analytics engine page lists both libraries and their digests. Embed the library in the application bundle and name it in the open options.
Verified by the release
Section titled “Verified by the release”Each release candidate builds every target in the table and passes every required check of the release matrix before promotion. The packages that this page names are the packages that the release tested.
Each release builds device and simulator slices of the C SDK and xcframework. It runs Swift and Objective-C suites on macOS.
The Swift quickstart does not run on a device or simulator. The frameworks below run their own programs in the simulator.
Each release also runs framework quickstarts on this platform: Flutter, React Native, Capacitor and Ionic, .NET MAUI. Each framework page describes its verification.