Awesome
Go by Example
Content and build toolchain for Go by Example, a site that teaches Go via annotated example programs.
Overview
The Go by Example site is built by extracting code and
comments from source files in examples
and rendering
them via the templates
into a static public
directory. The programs implementing this build process
are in tools
, along with some vendor'd dependencies
in vendor
.
The built public
directory can be served by any
static content system. The production site uses S3 and
CloudFront, for example.
Building
To build the site you'll need Go and Python installed. Run:
$ go get github.com/russross/blackfriday
$ tools/build
$ open public/index.html
To build continuously in a loop:
$ tools/build-loop
Publishing
To upload the site:
$ gem install aws-sdk
$ export AWS_ACCESS_KEY_ID=...
$ export AWS_SECRET_ACCESS_KEY=...
$ tools/upload
License
This work is copyright Mark McGranaghan and licensed under a Creative Commons Attribution 3.0 Unported License.
The Go Gopher is copyright Renée French and licensed under a Creative Commons Attribution 3.0 Unported License.
Translations
Contributor translations of the Go by Example site are available in:
- Chinese by xg-wang
- French by keirua
- Italian by the Go Italian community
- Japanese by spinute
- Korean by mingrammer
- Spanish by the Go Mexico community
- Ukrainian by butuzov
Thanks
Thanks to Jeremy Ashkenas for Docco, which inspired this project.