Skip to content

Go package

A blueprint that creates a Go package folder with a source file and a test.

blueprintor.config.js
module.exports = {
blueprints: [
{
title: "Go package",
variables: [{ key: "pkg", prompt: "Package name (lowercase, one word)" }],
snippets: {
source: `
package {pkg.raw}
// Hello returns a greeting from the {pkg.raw} package.
func Hello() string {
return "hello from {pkg.raw}"
}
`,
test: `
package {pkg.raw}
import "testing"
func TestHello(t *testing.T) {
want := "hello from {pkg.raw}"
if got := Hello(); got != want {
t.Errorf("Hello() = %q, want %q", got, want)
}
}
`,
},
structure: {
folders: [
{
name: "{pkg.raw}",
files: [
{ name: "{pkg.raw}.go", snippet: "source" },
{ name: "{pkg.raw}_test.go", snippet: "test" },
],
},
],
},
},
],
};
  1. Right-click the folder where the package should live (for example internal) and choose Run Blueprintor….

  2. Select Go package.

  3. Enter greeter.

  • Directoryinternal
    • Directorygreeter
      • greeter.go
      • greeter_test.go
package greeter
// Hello returns a greeting from the greeter package.
func Hello() string {
return "hello from greeter"
}