# The gokrazy Go build tag

If you want to add code to your project that is specific to gokrazy, you can conditionally compile it using the `gokrazy` Go build tag. Place this line at the top of your file, followed by a blank line:

    //go:build gokrazy

    // Program qrbill-api serves QR codes for the Swiss QR-bill standard via HTTP.
    package main

By convention, the file name for such code should end in `_gokrazy.go`, similar to how the go tool picks up on `GOOS` and `GOARCH` from, for example, `source_windows_amd64.go`.

## Example: qrbill

As an example, take a look at the qrbill programm, which changes its default listen address (in `api_gokrazy.go`) depending on where it runs.

For development, it listens on `localhost:9933`, but on gokrazy, it listens on `:9933` (all IP addresses).