Xcode Playground management made easy
Swift Makefile Objective-C



Build Status GitHub license GitHub release Language

Toybox made easy to manage Xcode Playgrounds.

You can create and open Xcode Playground from CLI.

$ toybox create Snippet
# Generate ~/.toybox/Snippet.playground and open with Xcode

This product is under development so interfaces might change.

Before Toybox

Using Toybox



You can install Toybox via Homebrew.

$ brew install giginet/toybox/toybox

Xcode 8 is required.


Download installer from Releases

If you are using macOS Sierra, you have to disable Gatekeeper with following.

$ sudo spctl --master-disable


Create new Playground

# Create 'UIKitDemo.playground' for iOS
$ toybox create UIKitDemo
# Create new Playground named with timestamp
$ toybox create
# Create 'SpriteKit.playground' for macOS
$ toybox create SpriteKitDemo --platform macos
# Overwrite existing playground 'UIKitDemo'
$ toybox create UIKitDemo -f
# Create but don't open with Xcode
$ toybox create UIKitDemo --no-open
# Create and open with specific Xcode
$ toybox create UIKitDemo --xcode-path /Application/Xcode7.3.app
# Create Playground from standard input
$ echo 'print("Hello World")' | toybox create --input

Created Playgrounds will be saved under $HOME/.toybox

List Playgrounds

# List all existing playgrounds
$ toybox list
# List all playgrounds of specific platform
$ toybox list --platform ios

Open Playground

# Open UIKitDemo.playground with default Xcode
$ toybox open UIKitDemo
# Open UIKitDemo.playground with specific Xcode
$ toybox open UIKitDemo --xcode-path /Application/Xcode7.3.app


# Display current Toybox version
$ toybox version
# Display path to Toybox root directory,
# It should return '$HOME/.toybox'
$ toybox root

Extra Usage

Open existing playgrouds with peco

toybox list | peco | sed -E 's/\(.*\)$//g' | xargs toybox open


giginet <giginet.net@gmail.com>


MIT License