Sign inSign up

rayh/swift-notebook

By rayh

•Updated over 8 years ago

A Jupyter Notebook (based on jupyter/minimal-notebook) with a Swift 4.1 Kernel

Image
1

509

rayh/swift-notebook repository overview

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

Tag summary

Content type

Image

Digest

Size

1.3 GB

Last updated

over 8 years ago

docker pull rayh/swift-notebook