OnlineSwiftPlayground
Online Swift Playground
Install / Use
/learn @krzyzanowskim/OnlineSwiftPlaygroundREADME
SwiftPlayground.run
Online Swift Playground. Implemented in Swift.
TBA. Checkout http://SwiftPlayground.run

Installation & Run
$ git clone https://github.com/krzyzanowskim/OnlineSwiftPlayground.git
$ cd OnlineSwiftPlayground
$ ./run.sh
The run.sh script will generate Xcode project (on macOS) and bootstrap the environment. run.sh needs npm to be installed to work properly.
Bootstraping involves
- Download Swift Toochains supported by the playground
- Pre-build support module using the toolchains
- Install dependencies
- Launches web server on localhost on port 8080
Now you could access playground pointing web browser to 127.0.0.1:8080.
Development
Xcode
Generate Xcode project
$ swift package generate-xcodeproj
React
Web user interface is build with React and webpack.
$ npm run build
Docker
krzyzanowskim/onlineswiftplayground
Download the latest image:
$ docker pull krzyzanowskim/onlineswiftplayground
or build docker image by yourself:
$ git clone https://github.com/krzyzanowskim/OnlineSwiftPlayground.git
$ cd OnlineSwiftPlayground
$ docker buildx create --use
$ docker buildx build --platform=linux/amd64,linux/arm64 . -t krzyzanowskim/onlineswiftplayground
then run container:
$ docker run -d -p 8080:8080 --name onlineswiftplayground -t krzyzanowskim/onlineswiftplayground
and wait until docker container is up (usually several seconds).
Playground is available at http://localhost:8080.
If the docker setup uses VirtualBox, the you can get the IP address from docker-machine ip command.
$ open http://$(docker-machine ip):8080
Config
Third party frameworks should be copied to Frameworks directory (Frameworks are for macOS host only)
See config/ for GitHub auth. sample config.
Author
SwiftPlayground.run is owned and maintained by Marcin Krzyzanowski
You can follow me on Twitter at @krzyzanowskim for project updates and releases.
License
Creative Commons Attribution Non Commercial 4.0. See LICENSE file.
Related Skills
node-connect
332.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
81.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
332.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
81.7kCommit, push, and open a PR
