/go-starter-kit

Go Starter Kit for HTTP API Applications

Primary LanguageGo

go-starter-kit

Go Starter Kit for Betterworks Server Applications

Documentation

Installation

Clone the repository

$ git clone git@github.com:BetterWorks/go-starter-kit.git
$ cd go-starter-kit

Development

Prerequisites

Show all commands

$ docker compose run --rm api just

Migrations

Run all up migrations

$ docker compose run --rm api just migrate

Run up migrations {n} steps

$ docker compose run --rm api just migrate-up svcdb {n}

Run down migrations {n} steps

$ docker compose run --rm api just migrate-down svcdb {n}

Create new migration

$ docker compose run --rm api just migrate-create {name}

Server

Run the server in development mode

$ docker compose run --rm --service-ports api

Testing

Run the integration test suite with code coverage

$ docker compose run --rm api just coverage

Building

Compile server binary

$ go build -mod vendor -o out/bin/domain ./cmd/httpserver

Contributing

  1. Create feature branch (git switch -c new-feature)
  2. Commit changes using conventional changelog standards (git commit -m 'feat(scope): adds new feature')
  3. Push to the branch (git push origin new-feature)
  4. Ensure linting and tests are passing
  5. Create new pull request

License

UNLICENSED