Contents

lukepistrol/pexels-swift

[Pexels.com API](https://www.pexels.com/api) client library for the Swift programming language.

Overview

This Swift Package is a wrapper for Pexels API to get access to the entire photo library of Pexels within your Swift app.

It is mandatory to get an API Key.

Installation (SPM)

dependencies: [
  .package(url: "https://github.com/lukepistrol/Pexels-Swift.git", from: "0.1.0")
],

Documentation

See the full documentation here or build it locally using ⇧⌃⌘D in Xcode once you added Pexels-Swift to your project.

Usage

import PexelsSwift

// access the singleton instance
let pexels = PexelsSwift.shared

// set your API key
pexels.setup(apiKey: "YOUR_API_KEY", logLevel: .debug)

// fetch images metadata using async/await
let result = await pexels.getCuratedPhotos()

switch result {
case .failure(let error):
    print(error.description)
case .success(let (data, paging, response)):
    // access photos
    // data -> [PSPhoto]
    // paging -> PSPagingInfo
    // response -> HTTPURLResponse
}

// fetch images metadata using completion handlers
pexels.getCuratedPhotos() { result in
    switch result {
    case .failure(let error):
        print(error.description)
    case .success(let (data, paging, response)):
        // access photos
        // data -> [PSPhoto]
        // paging -> PSPagingInfo
        // response -> HTTPURLResponse
    }
}

Demo Project

I've built a simple iOS app - PexelsBrowser - using this library and SwiftUI.

<a href="https://www.buymeacoffee.com/lukeeep" target="_blank"><img src="https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png" alt="Buy Me A Coffee" style="height: 60px !important;width: 217px !important;" ></a>

Package Metadata

Repository: lukepistrol/pexels-swift

Default branch: main

README: README.md