Okay I figured it out thanks to this question/answer
import(
"os"
"path/filepath"
)
newpath := filepath.Join(".", "public")
err := os.MkdirAll(newpath, os.ModePerm)
// TODO: handle error
Relevant Go doc for MkdirAll:
MkdirAll creates a directory named path,
along with any necessary parents, and returns nil,
or else returns an error.…
If path is already a directory, MkdirAll does nothing
and returns nil.