Go makes it easy to build simple, reliable, and efficient software.

To update or switch versions, run webi golang@stable (or @v1.19, @beta, etc).

Cheat Sheet

Go is designed, through and through, to make Software Engineering easy. It's fast, efficient, reliable, and something you can learn in a weekend.

If you subscribe to The Zen of Python, you'll love > Go.

You may also want to install the Go IDE tooling: go-essentials.

Hello World

  1. Make and enter your project directory

    mkdir -p ./hello/cmd/hello
    pushd ./hello/
  2. Initialize your go.mod to your git repository url:

    go mod init github.com/example/hello
  3. Create a hello.go

    cat << EOF >> ./cmd/hello/hello.go
    package main
    import (
    func main () {
      fmt.Println("Hello, World!")
  4. Format, build, and run your ./hello

    go fmt ./...
    go build -o hello ./cmd/hello/

    You should see your output:

    > Hello, World!

How to run a Go program as a service

On Linux:

# Install serviceman (compatible with systemd)
webi serviceman
# go into your programs 'opt' directory
pushd ./hello/

# swap 'hello' and './hello' for the name of your project and binary
sudo env PATH="$PATH" \
    serviceman add --system --username "$(whoami)" --name hello -- \

# Restart the logging service
sudo systemctl restart systemd-journald


Report an Issue Submit Installer Star on GitHub