shenzhen-go

by google

google / shenzhen-go

Experimental visual Go environment

443 Stars 41 Forks Last release: Not found Apache License 2.0 801 Commits 2 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

"SHENZHEN GO" (working title)

Build Status Doc Status license

SHENZHEN GO (working title) is an experimental visual Go environment, inspired by programming puzzle games such as TIS-100 and SHENZHEN I/O.

SHENZHEN GO provides a UI for editing a "graph," where the nodes are goroutines and the arrows are channel reads and writes. (This is analogous to multiple "microcontrollers" communicating electrically in a circuit.) It can also convert a graph into pure Go source code, which can be compiled and run, or used as a library in a regular Go program.

SHENZHEN GO was unveiled at the linux.conf.au 2017 Open Source & Games Miniconf.

Read more at https://google.github.io/shenzhen-go.

Example Graph

Getting started

See the getting-started guides at https://google.github.io/shenzhen-go.

...for the impatient gopher

Choose one of:

git clone https://github.com/google/shenzhen-go && cd shenzhen-go && go install
git clone https://github.com/google/shenzhen-go && cd shenzhen-go && go install -tags webview
go get -u github.com/google/shenzhen-go
go get -u -tags webview github.com/google/shenzhen-go

Notes

This is not an official Google product.

This is an experimental project - expect plenty of rough edges and bugs, and no support.

For discussions, there is a Google Group and a Slack channel.

Acknowledgements

This project wouldn't be nearly as good as it is without the following:

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.