An open API service indexing awesome lists of open source software.

https://github.com/zulip/swift-zulip-api

A Zulip library written in Swift.
https://github.com/zulip/swift-zulip-api

swift zulip

Last synced: 3 months ago
JSON representation

A Zulip library written in Swift.

Awesome Lists containing this project

README

        

# `swift-zulip-api` Swift logo Swift logo

[![Travis CI build status](https://img.shields.io/travis/com/zulip/swift-zulip-api.svg)](https://travis-ci.com/github/zulip/swift-zulip-api)
[![GitHub tag](https://img.shields.io/github/tag/zulip/swift-zulip-api.svg)](https://github.com/zulip/swift-zulip-api)
[![language badge](https://img.shields.io/badge/language-Swift-orange.svg)](https://swift.org)

A library to access the Zulip API with **Swift**.

## Installation

### Swift Package Manager

`swift-zulip-api` can be installed with the
[Swift Package Manager](https://is.gd/aRdTkN).

In your `dependencies`, add
[`https://github.com/zulip/swift-zulip-api.git`](https://is.gd/SQQWRT):

```swift
dependencies: [
.package(
url: "https://github.com/zulip/swift-zulip-api.git",
from: "0.3.0"
)
]
```

### CocoaPods

`swift-zulip-api` can also be installed with [CocoaPods](https://is.gd/iMgFFg).

In your `Podfile`, add `swift-zulip-api`.

```ruby
pod 'swift-zulip-api'
```

Then run `pod install` from the terminal.

```bash
pod install
```

## Usage

### Set-up

```swift
import SwiftZulipAPI

// Set up a Zulip configuration.
let config = Config(
emailAddress: "[email protected]",
apiKey: "yourapikey",
realmURL: "https://example.com"
)

// Create the Zulip client.
let zulip = Zulip(config: config)
```

### Functions

`swift-zulip-api` is split into a few different namespaces, each with their own
functions:

**messages:**
```swift
let messages = zulip.messages()
```

[See the full `messages` docs.](https://github.com/zulip/swift-zulip-api/blob/master/docs/messages.md)

**streams:**
```swift
let streams = zulip.streams()
```

[See the full `streams` docs.](https://github.com/zulip/swift-zulip-api/blob/master/docs/streams.md)

**users:**
```swift
let users = zulip.users()
```

[See the full `users` docs.](https://github.com/zulip/swift-zulip-api/blob/master/docs/users.md)

**events:**
```swift
let events = zulip.events()
```

[See the full `events` docs.](https://github.com/zulip/swift-zulip-api/blob/master/docs/events.md)

### Examples

Each of the function docs has examples for how to use the functions. There is
also a [full Swift example file](https://github.com/zulip/swift-zulip-api/blob/master/example/SwiftZulipAPIExample/main.swift)
if you want to see every function being used in an actual example program.
The example can be run by using

```bash
swift run SwiftZulipAPIExample
```

from the terminal.

### Bots

`swift-zulip-api` supports writing Bots to automatically respond to users. Each
bot will respond when it is mentioned in a message.

[See the full bots docs.](https://github.com/zulip/swift-zulip-api/blob/master/docs/bots.md)