View on GitHub
Source code, issues, and releases.
Requirements
| Requirement | Version |
|---|---|
| Xcode | 15.0 or later |
| iOS | 17.0 or later |
| macOS | 14.0 or later |
| Swift | 5.9 or later |
Installation
Add the Metabind SDK to your project using Swift Package Manager.- Xcode
- Package.swift
- Open your project in Xcode
- Go to File → Add Package Dependencies
- Enter the repository URL:
- Select the version and add to your target
Quick start
1. Initialize the client
Create aMetabindClient with your API credentials from the Metabind dashboard:
2. Display content
UseMetabindView to render content by its ID:
3. Handle actions
Listen for actions triggered by user interactions:Core concepts
MetabindClient
The client manages the connection to Metabind’s API and handles:- Authentication — API key validation and request signing
- Content fetching — GraphQL queries for content and components
- Real-time updates — WebSocket subscriptions for live content changes
- Caching — Local caching of fetched content and components
MetabindView
MetabindView is the primary way to display content. It automatically:
- Fetches the content and its required components
- Renders the UI based on your design system
- Subscribes to real-time updates when content changes
- Handles loading and error states
Actions
Actions are events triggered by user interactions with your content. The SDK provides theonMetabindAction modifier to handle these:
| Action | Description |
|---|---|
metabind.content | Navigate to another content page |
metabind.url | Open an external URL |
metabind.dismiss | Dismiss the current view |
| Custom actions | Your own defined actions |
Navigation
For apps with multiple content pages, integrate with SwiftUI’s navigation system:Platform support
The SDK supports all Apple platforms with SwiftUI:| Platform | Minimum Version |
|---|---|
| iOS | 17.0 |
| macOS | 14.0 |
| tvOS | 17.0 |
| watchOS | 10.0 |
| visionOS | 1.0 |