Nakama 0.3.0

Nakama 0.3.0

TestsTested
LangLanguage SwiftSwift
License Apache 2
ReleasedLast Release Nov 2017
SwiftSwift Version 4.0
SPMSupports SPM

Maintained by Mo Firouz.



 
Depends on:
SwiftProtobuf~> 1
Starscream~> 2
PromiseKit~> 4
 

Nakama 0.3.0

Nakama Swift

Swift client for Nakama server.

Nakama is an open-source distributed server for social and realtime games and apps. For more information have a look at the documentation.

This client implements the protocol and all features available in the server. It is compatible with Swift 3.1+.

If you encounter any issues with the server you can generate diagnostics for us with the doctor subcommand. Send these to [email protected] or open an issue. If you experience any issues with the client, it can be useful to enable trace to produce detailed logs and open an issue.

Usage

You can use the Swift package manager to add the code as a dependency for your project. Add the client as a dependency to your "Package.swift" file.

let package = Package(
  // ...
  dependencies: [
    .Package(url: "https://github.com/heroiclabs/nakama-swift.git", Version(0,1,0)),
  ]
)

We have a guide which covers how to use the client with lots of code examples:

https://heroiclabs.com/docs/swift-ios-client-guide/

To create a client which can connect to the Nakama server with the default settings.

import Nakama

public class NakamaSessionManager {
  private let client: Client;

  init() {
    client = Builder("defaultkey")
        .host("127.0.0.1")
        .port(7350)
        .ssl(false)
        .build()
  }
}

Contribute

To build the codebase you will need to install these dependencies:

  • Swift 3.1+
  • XCode 8.3+

You must clone the repository and can (optionally) generate updated protocol buffers definitions if needed.

$> git clone [email protected]:heroiclabs/nakama-swift.git --recursive
$> swift package fetch
$> cd .build/checkouts/swift-protobuf.git--7219529775138357838/
$> swift build -c release -Xswiftc -static-stdlib
$> cd ../../..
$> protoc --plugin=./.build/checkouts/swift-protobuf.git--7219529775138357838/.build/release/protoc-gen-swift --swift_out=Sources/Nakama/. server/server/api.proto
$> mv Sources/Nakama/server/server/api.pb.swift Sources/Nakama/Server.Api.pb.swift
$> swift package generate-xcodeproj

Development

With the codebase setup you can build and test.

$> swift build
$> swift test