goplayspace

Advanced Go Playground frontend written in Go, with syntax highlighting, turtle graphics mode, and more

Github星跟踪图

About Go Play Space

Go Play Space is an experimental alternative Go Playground
frontend that is built in Go itself (using GopherJS),
a Go→JavaScript transpiler, and Vecty,
a React-like frontend library for GopherJS).

Try it: https://goplay.space

demo

Go Play Space supports the Turtle graphics mode to help visualize algorithms and make learning experience more fun.

draw mode demo

Features

  1. Syntax highlighting, auto-closing braces and quotes, proper undo/redo, auto indentation
  2. Smart help lookup: double-click on e.g. package keyword
    or Println function name in source code, and you will see
    the relevant help topic.
  3. Live syntax error checking
  4. Error line highlighting (both for syntax errors and for errors
    returned from the compiler)
  5. Ability to highlight lines and blocks of code (like on Github, but better!) —
    just click on the line numbers. Use Shift and Ctrl
    to modify the selection
  6. Keyboard shortcuts (see button captions)
  7. Support for several UI themes
  8. Support for Fira Code font
    (either the one installed in your system or a webfont)
  9. go imports is always run before running your code, so you don't usually
    have to worry about imports at all

Code execution is proxied to the official Go Playground, so your programs will work the same.
Shared snippets are also stored on golang.org servers.

Running Locally

Download the package:

$ go get -u github.com/iafan/goplayspace/...

Compile both client-side code and server binary:

$ cd $GOPATH/src/github.com/iafan/goplayspace/bin
$ ./build-client && ./build-server

Run the server:

$ ./goplayspace

Then open http://localhost:8080/ in your browser.

Troubleshooting

If you have trouble compiling the client, please make sure you have the latest version of GopherJS installed by running go get -u github.com/gopherjs/gopherjs (see #6)

Feedback

Feel free to provide your feedback, suggestions or bug reports here in the bug tracker, or message @afan in the Gophers Slack channel.

Credits

Gopher vector logo by Takuya Ueda,
licensed under the Creative Commons 3.0 Attributions license and based
on original artwork by Renee French.
See https://github.com/golang-samples/gopher-vector

Go proverbs: Rob Pike

主要指标

概览
名称与所有者iafan/goplayspace
主编程语言Go
编程语言Shell (语言数: 4)
平台
许可证Other
所有者活动
创建于2017-06-05 04:26:49
推送于2022-05-06 20:02:31
最后一次提交2020-08-17 21:50:10
发布数0
用户参与
星数1k
关注者数15
派生数64
提交数60
已启用问题?
问题数43
打开的问题数26
拉请求数5
打开的拉请求数0
关闭的拉请求数2
项目设置
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?