Skip to content

Latest commit

 

History

History
35 lines (23 loc) · 1.52 KB

development.md

File metadata and controls

35 lines (23 loc) · 1.52 KB

Development

Tooling

  • asdf - Extendable version manager with support for Ruby, Node.js, Erlang & more
  • goimports - Updates your Go import lines, adding missing ones and removing unreferenced ones. Also formats your code in the same style as gofmt.
  • gotestsum - 'go test' runner with output optimized for humans, JUnit XML for CI integration, and a summary of the test results.
  • revive - Fast, configurable, extensible, flexible, and beautiful linter for Go.
  • pre-commit - Framework for managing multi-language pre-commit hooks

Setup local environment

OS X

make setup-osx-env

This uses Homebrew to install the revive, asdf, and pre-commit tools. It then uses asdf to install the version of Go specified in .tool-versions, downloads the goimports and gotestsum tools, and sets up the pre-commit hooks configured in .pre-commit-config.yml.

GitHub pre-commit hooks

This project uses pre-commit to run lint, vet, and unit check tests before you commit any code.

Continuous Integration

This project uses GitHub Actions for build and continuous integration.

Code Quality

This project uses CodeClimate to track code quality metrics and trends.