Skip to content
/ seed Public template

Go application GitHub repository template.

License

Notifications You must be signed in to change notification settings

golang-templates/seed

Repository files navigation

Go Repository Template

GitHub Release go.dev go.mod Build Status Go Report Card

This is a GitHub repository template for Go. It has been created for ease-of-use for anyone who wants to:

  • quickly get into Go without losing too much time on environment setup,
  • create a new repoisitory with basic Continous Integration.

It includes:

Star this repository if you find it valuable and worth maintaining.

Watch this repository to get notified about new releases, issues, etc.

Usage

  1. Click the Use this template button (alt. clone or download this repository).
  2. Replace all occurences of golang-templates/seed to your_org/repo_name in all files.
  3. Change LICENSE and README.md.

Build

  • Terminal: make to get help for make targets.
  • Terminal: make all to execute a full build.
  • Visual Studio Code: TerminalRun Build Task... (CTRL+ALT+B) to execute a fast build.

Maintainance

Remember to update Go version in .github/workflows, Makefile and devcontainer.json.

Notable files:

FAQ

Why Visual Studio Code editor configuration

Developers that use Visual Studio Code can take advantage of the editor configuration. While others do not have to care about it. Setting configs for each repo is unnecessary time consuming. VS Code is the most popular Go editor (survey) and it is officially supported by the Go team. You can always remove the .vscode directory and update .gitignore if it really does not help you.

Why nothing for GoLand

The maintainer does not use GoLand. Fell free to create a pull request for #2.

Why GitHub Actions, not any other CI server

GitHub Actions is out-of-the-box if you are already using GitHub. However, changing to any other CI server should be very simple, because this repository has build logic and tooling installation in Makefile. You can also use the docker make target to run the build inside a docker container.

How can I use Make on Windows

Use WSL (Windows Subsystem for Linux) or try Make Windows port.

Contributing

Simply create an issue or a pull request.