Go to file
2023-09-08 22:24:31 +02:00
.github chore: add timeout 2023-09-08 12:23:25 +02:00
.husky feat: update deps and setup 2023-08-11 09:55:34 +02:00
config feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
env feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
errors chore: use new Unwrap() []error 2023-07-06 11:28:22 +02:00
examples feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
healthz feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
integration feat: add env configuration 2023-08-14 13:21:49 +02:00
interfaces feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
jwt feat: fix lint errors 2022-08-12 15:58:56 +02:00
log feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
markdown feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
metrics feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
net feat: change span names 2023-08-14 08:20:52 +02:00
persistence feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
service feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
telemetry feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
test feat: keep perm 2023-02-20 10:35:21 +01:00
time feat: add keeltime 2022-01-03 13:20:06 +01:00
utils/net/http feat: wrap server error 2023-07-10 12:22:16 +02:00
.editorconfig chore: linting 2021-11-19 14:16:09 +01:00
.gitignore chore: update github workflow 2023-09-08 12:17:44 +02:00
.golangci.yml refactor: expose docs through interface 2023-09-08 15:49:23 +02:00
.goreleaser.yml chore: update github workflow 2023-09-08 12:17:44 +02:00
.husky.yaml chore: update github workflow 2023-09-08 12:17:44 +02:00
.prettierrc.yml chore: update github workflow 2021-11-19 12:29:44 +01:00
closer.go feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
CODE_OF_CONDUCT.md feat: update deps and setup 2023-08-11 09:55:34 +02:00
errors.go feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
go.mod feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
go.sum feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
healthz.go feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
ldflags.go initial commit 2021-05-18 08:34:47 +02:00
LICENSE docs: add license 2021-07-26 15:58:31 +02:00
Makefile chore: update github workflow 2023-09-08 12:17:44 +02:00
option.go feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
README.md docs: update readme 2023-09-08 12:28:36 +02:00
server_test.go feat: add GoRoutine service 2023-09-08 12:17:23 +02:00
server.go feat: add mongo and refactor readme 2023-09-08 22:24:31 +02:00
service.go feat: add name 2021-11-16 15:31:09 +01:00
serviceenabler.go feat: add service enabler 2022-06-02 14:10:10 +02:00

keel

Build Status Go Report Card Coverage Status GoDoc

Opinionated way to run services.

Stack

  • Zap
  • Viper
  • Open Telemetry
  • Nats
  • GoTSRPC

Examples

See the examples folder for usages

package main

import (
  "net/http"

  "github.com/foomo/keel"
  "github.com/foomo/keel/service"
)

func main() {
  svr := keel.NewServer(
    keel.WithHTTPZapService(true),
    keel.WithHTTPViperService(true),
    keel.WithHTTPPrometheusService(true),
  )

  l := svr.Logger()

  svs := newService()

  svr.AddService(
    service.NewHTTP(l, "demo", "localhost:8080", svs),
  )

  svr.Run()
}

func newService() *http.ServeMux {
  s := http.NewServeMux()
  s.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    w.WriteHeader(http.StatusOK)
    _, _ = w.Write([]byte("OK"))
  })
  return s
}

How to Contribute

Make a pull request...

License

Distributed under MIT License, please see license file within the code for more details.