Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Rust Playground for MacOS

status: experimental / pre-release / guaranteed buggy

The Rust Playground for MacOS is a standalone native mac application that allows quickly editing and testing rust snippets.

Rust Playground Screenshot


You can download a disk image of a recent build on the releases page.


The playground requires rustup, and allows code to be run with any installed toolchain. note: Rustup must currently be in the default directory, $HOME/.rustup.

install from source (requires Xcode)

  • clone this repository
  • cd in to the RustPlayground directory
  • run xcodebuild from the command line
  • copy build/Release/Rust to your Applications directory


This project is based on a fork of the xi-editor core. It is intended largely as an experimental offshoot of xi; a narrowly scoped editor frontend that can be used to experiment with various design decisions.

Document state is handled in rust; the swift frontend interfaces with the rust code via FFI.


  • syntax highlighting
  • font selection
  • auto-indent
  • comment toggling
  • line breaking
  • extern crates (with a hacky custom syntax for declaring imports)
  • use any installed toolchains

Known issues

  • Performance is not great; it is expected that documents are only ever a few hundred lines.
  • Drawing is hacky. We may draw ghost selections.


  • export to gist / web playground
  • export to new cargo project?
  • rustfmt / clippy
  • multiple documents, saving snippets?
  • ASM / IR output

One day, maybe


to the xi-editor contributors, to Jake Goulding for the excellent implementation, and to the Rust community at large.