Skip to content

IBM-Swift/Kitura-HelloWorld-iOS

Repository files navigation

Kitura Builder for iOS

Kitura/iOS Hello World

Build Status macOS iOS Apache 2 codebeat badge  Slack Status

Simple Hello World Kitura Application (Server Side) embedded in an iOS app (Client Side). The app demonstrates starting and stopping Kitura server, and presents Kitura log on the screen.

Publications

Quick Instructions

(Last tested on macOS Mojave 10.14 and Xcode 10.1)

  1. Setup (run in a terminal). The following commands install Xcode command line tools, Ruby Xcodeproj gem, download curl 7.43.0 source code and compile it. You may want to download and compile some other version of curl or to compile it using some other script, for example https://github.com/gcesarmza/curl-android-ios.
xcode-select --install
sudo gem install xcodeproj

git clone https://github.com/IBM-Swift/Kitura-HelloWorld-iOS.git
cd Kitura-HelloWorld-iOS
make Builder/Makefile

curl -O https://curl.haxx.se/download/curl-7.43.0.tar.bz2
bzip2 -d curl-7.43.0.tar.bz2; tar xopf curl-7.43.0.tar; rm -r curl-7.43.0.tar
bash ./Builder/Scripts/buildCurlStaticLibrary.sh curl-7.43.0

Troubleshooting on Mojave: if the last command above fails, follow the instructions in curl/curl#3189 (comment).

  1. The following command will fetch the submodules, update them, generate an Xcode project for the Server Side part and generate an Xcode workspace for the End-to-End project.

For 64Bit (example, iPhone 5s or newer, iPad Air or newer, iPad Mini 2 or newer, iPad Pro or newer)

make openXcode

For 32Bit (example, iPhone 5, 5c, iPad 4)

make openXcode32
  1. Open EndToEnd.xcworkspace
  2. Change scheme to "ClientSide"
  3. Load on iPhone or iPhone simulator
  4. On the running app, turn on the toggle switch above the QR code
  5. On another device, connect to the listed URL

Quick Instructions for Updating the Project

  1. git pull to get the latest version of Kitura
  2. Remove the Builder directory
  3. run make openXcode or make openXcode32

Command Line Tests

Run make test