Skip to content

rayh/iSwift

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

iSwift is the kernel IPython/Notebook implementation for Swift programming language.

It can:

  • Execute swift code on the Jupyter Notebook web editor, Jupyter console as well as Jupyter qtconsole.
  • Import Foundatation/Dispatch and other Buildin libraries.
  • Autocomplete swift code by pressing tab ↹.
  • Support encryption.
  • Support Linux/macOS

This project is based off KelvinJin/iSwift but makes a few changes:

  • Updates to support Swift 4.1
  • Base the docker image off jupyter/minimal-notebook

Quick Start

The preferred way of using this is via the docker image, either locally or in jupyterhub/binderhub

$ docker run -t -i -p 8888:8888 --privileged rayh/swift-notebook

And open the link you see in the console, which will start Jupyter, from there you can select New -> Swift

Demo

You can demo a version of this on binderhub here:

Requirements

  • macOS/Linux
  • Swift 4.1
  • ZMQ  + Jupyter 5.0

macOS Installation

Clone this repo locally. And:

  1. Follow this script to install the libzmq on your machine.

  2. Build the project.

swift build
  1. Currently, in order to run swift kernel locally, you need to create a file named kernel.json. Put the following content to the file and replace the Path/to/iSwift with your local clone path.
{
 "argv": ["Path/to/iSwift/.build/debug/iSwift", "-f", "{connection_file}"],
 "display_name": "Swift",
 "language": "swift"
}
  1. Install Jupyter kernel: (replace the Folder/that/has/kernel/json with the path of the folder that contains the kernel.json file)
jupyter-kernelspec install Folder/that/has/kernel.json
  1. Run Jupyter Notebook (token needs to be empty):
jupyter notebook --NotebookApp.token=

Linux Installation

  1. Install Swift 3.0.
  2. Check if you have libzmq installed.
  3. Continue from step 2 in the section above.

Docker Installation

Simply clone this repo and run docker build -t iswift .. It will build the docker image.

Author

Jin Wang

Contribution

Contributions are welcome. Simply create an issue if you have ideas on how we can improve iSwift.

License

MIT

About

A Swift kernel for IPython.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 99.2%
  • Objective-C 0.8%