Skip to content

Kamva/hexa

Repository files navigation

Hexa is a microservice SDK.

Note : Hexa is in progress, it does not have stable version until now, so use it at your own risk.

Requirements:

go : minimum version 1.13

Install

go get github.com/kamva/hexa

Available Services:

How to use:

example:

// Assume we want to use viper as config service.
v := viper.New()

// tune your viper.
config := hexaconfig.NewViperDriver(v)

// Use config service in app.

Proposal

  • Replace http status code with gRPC status code in our errors (also maybe in replies).

  • Implement Hexa Context propagators for distributed tracing.

  • Implement a service (e.g Health) which should implement by all Hexa services to check health of that service [Accepted][Implemented].

Notes

  • Run go generate ./db/... or go generate ./... to generate some files after your changes in the DB models.
  • Run golangci-lint run ./... to run the linter.

Todo

  • Where are we checking log level on logger initialization step?
  • Change all of kamva packages from uppercase to lowercase.
  • Write Tests
  • Add badges to readme.
  • CI for tests.