---
title: Install Couchbase Lite on Swift
description: Installing Couchbase Lite on Swift
pubDate: 2026-08-17T09:53:44.266Z
antora:
  editUrl: https://github.com/couchbase/docs-couchbase-lite/edit/release/3.0/modules/swift/pages/gs-install.adoc
  xref: xref:3.0@couchbase-lite:swift:gs-install.adoc[]
---

[Consult the llms.txt file for a full list of contents](/llms.txt)
[View original HTML](/couchbase-lite/3.0/swift/gs-install.html)

# Install Couchbase Lite on Swift

> Description — _Installing Couchbase Lite on Swift_  

## [](#get-started)Get Started

To get started coding Couchbase Lite for Swift apps, just create or open an existing _Xcode_ project and install the required _Couchbase Lite_ version, for example 3.0.15, using one of the [Install Methods](#lbl-install-tabs) methods shown.

> [!NOTE]
> Couchbase Lite is distributed as an XCFramework, to support this:
> 
> * The minimum required CocoaPods version is **1.9**
> * The minimum required Carthage version is **38.0**

### [](#lbl-install-tabs)Install Methods

* Direct Download
* Carthage
* CocoaPods
* Swift Package Manager

1. Download the binaries from here — [Extend with Mobile](https://www.couchbase.com/downloads#extend-with-mobile).
2. Unpack the download
3. Drag **CouchbaseLiteSwift.xcframework** from your Finder to the Xcode navigator.
4. Click on **Project** **General** **Embedded Binary** and add **CouchbaseLiteSwift.xcframework** to this section.
5. Import the XCFramework  
```swift  
import CouchbaseLiteSwift  
...  
```
6. Start using Couchbase Lite on Swift in your project.

> [!NOTE]
> The minimum required Carthage version is **38.0+**

1. Install Carthage using the instructions here:  
<https://github.com/Carthage/Carthage#installing-carthage>
2. In your **Cartfile**, add the appropriate 'binary' URL:  
Couchbase Lite Community Edition  
```ruby  
binary "https://packages.couchbase.com/releases/couchbase-lite-ios/carthage/CouchbaseLite-Community.json" ~> 3.0.15  
```

| **1** | Specify the required version number, here we use the latest version |
| ----- | ------------------------------------------------------------------- |  
Couchbase Lite Enterprise Edition  
```ruby  
binary "https://packages.couchbase.com/releases/couchbase-lite-ios/carthage/CouchbaseLite-Enterprise.json" ~> 3.0.15 (1)  
```

| **1** | Specify the required version number, here we use the latest version |
| ----- | ------------------------------------------------------------------- |
3. Run `carthage update --platform ios`.
4. Drag **CouchbaseLiteSwift.xcframework** from **Carthage/Build/** to the Xcode navigator.
5. Select **Project** **General** **Embedded Binary**, add **CouchbaseLiteSwift.xcframework** to this section.

> [!NOTE]
> The minimum required Cocoapods version is **1.9**

1. Install CocoaPods using the instructions here:  
<https://guides.cocoapods.org/using/getting-started.html>
2. Add one of these targets to your **Podfile**:  
Couchbase Lite Community Edition  
```ruby  
target 'Example' do  
  use_frameworks!  
  pod 'CouchbaseLite-Swift', '3.0.15' (1)  
end  
```

| **1** | Specify the required version number, here we use the latest version |
| ----- | ------------------------------------------------------------------- |  
Couchbase Lite Enterprise Edition  
```ruby  
target 'Example' do  
  use_frameworks!  
  pod 'CouchbaseLite-Swift-Enterprise', '3.0.15' (1)  
end  
```

| **1** | Specify the required version number, here we use the latest version |
| ----- | ------------------------------------------------------------------- |
3. Install the pods and open the `.xcworkspace` file generated by CocoaPods, using:  
```bash  
pod install  
```

> [!NOTE]
> Using Swift Package Manager to install CouchbaseLiteSwift requires Xcode 12+

This tab explains how to include the CouchbaseLiteSwift package within your app  
See: [Use Case 1\. Include in Existing Swift Package](#case-1) | [Use Case 2\. Include in Your App Project](#case-2)

Use Case 1\. Include in Existing Swift Package

Here we will add the `CouchbaseLiteSwift` dependency to your Parent Swift package — see: [Example 1](#sample) for the sample manifest.

1. Add the CouchbaseLiteSwift package as dependency by including the following in the parent package manifest:  
```swift  
dependencies: [  
  .package(name: "CouchbaseLiteSwift",  
    url: "insert Couchbase Lite URL", (1)  
    from: "3.0.15"), (2)  
  ],  
```

| **1** | Insert appropriate Couchbase Lite URL:For Community Edition use: <https://github.com/couchbase/couchbase-lite-ios.git>For Enterprise Edition use: <https://github.com/couchbase/couchbase-lite-swift-ee.git> |
| ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **2** | Include the required version number here, for example the latest version is 3.0.15                                                                                                                           |
2. Add the dependent package product name, to the target:  
```swift  
targets: [  
  .target(name: "ParentPackage",  
    dependencies: ["CouchbaseLiteSwift"]),  
  ]  
```
3. Import CouchbaseLiteSwift, and use it:  
```swift  
import CouchbaseLiteSwift  
class ParentPackageSomeClass {  
  func someFunction() {  
    let db = try! Database(name: "testdb")  
    print(">> opening the db: \(db.name)")  
  }  
}  
```

Example 1\. Simple Manifest

```swift
// swift-tools-version:5.3
import PackageDescription
let package = Package(
name: "ParentPackage",
products: [
  .library(
    name: "ParentPackage",
    targets: ["ParentPackage"]),
  ],
dependencies: [
  .package(name: "CouchbaseLiteSwift",
    url: "https://github.com/couchbase/couchbase-lite-swift-ee.git", from: "3.0.15"),
  ],
targets: [
  .target(
    name: "ParentPackage",
    dependencies: ["CouchbaseLiteSwift"]),
  .testTarget(
    name: "ParentPackageTests",
    dependencies: ["ParentPackage"]),
  ]
)
```

Use Case 2\. Include in Your App Project

Here we will add `CouchbaseLiteSwift` directly into your app

1. Open the project to which you are going to add CouchbaseLiteSwift  
![spm 1](_images/spm-1.png)
2. Open the Project Editor to add a dependency

  1. In _Project Navigator_:  
**Select** your Xcode project file (for example, `HostApp` in the example)  
  Xcode opens the _Project Editor_ pane
  2. In the _Project Editor_ pane:  
**Select** **Project** **Swift Packages** and **+** to add the dependency  
  Xcode opens the _Choose Package Repository_ dialog  
  ![spm 2](_images/spm-2.png)
3. In the _Choose Package Repository_ dialog:  
**Enter** the appropriate Couchbase Lite URL, **Next** to continue  
For example: <https://github.com/couchbase/couchbase-lite-swift-ee.git>  
![spm 3](_images/spm-3.png)
4. **Enter** the required **_Version_** (the latest is 3.0.15) and **Next** to continue  
![spm 4](_images/spm-4.png)
5. **Finish** to close the _Choose Package Repository_ dialog  
![spm 5](_images/spm-5.png)  
Xcode displays the name, version and URL of the added CouchbaseLiteSwift Package  
![spm 6](_images/spm-6.png)
6. You can now import CouchbaseLiteSwift, and use it in your app  
![spm 7](_images/spm-7.png)

## [](#related-content)Related Content

###### [](#)

How to . . .

* [Prerequisites](gs-prereqs.md)
* [Install](gs-install.md)
* [Build and Run](gs-build.md)

###### [](#-2)

Learn more . . .

* [Databases](database.md)
* [Documents](document.md)
* [Blobs](blob.md)
* [Remote Sync Gateway](replication.md)
* [Handling Data Conflicts](conflict.md)

###### [](#-3)

Dive Deeper . . .

[Mobile Forum](https://forums.couchbase.com/c/mobile/14) | [Blog](https://blog.couchbase.com/) | [Tutorials](https://docs.couchbase.com/tutorials/)