Categorygithub.com/sapiderman/seed-go
module
0.0.0-20240807051554-7dbbb9579baa
Repository: https://github.com/sapiderman/seed-go.git
Documentation: pkg.go.dev

# README

Golang Seed

Go

Small starter project to play around with golang features, github actions and various pipelines.

Features

FeaturesDescription
gorilla muxrouting using gorilla mux
contextscontexts
logruslogging library
sqlxsqlx driver
pgxpgx driver
monitoringelastic's application performance monitoring
health checkIETF RFC Health Ceck via nelkinda's health-go
swagger apiAPI documentations using swagger swagger.io

todo:

  • circuit breaker
  • profiler
  • test

endpoints

GET /health GET /docs
GET /v1/hello
GET /v1/time GET /web/

GET /v1/users
GET /v1/devices
POST /v1/user
POST /v1/device

build

go build ./...

tests

go test ./... -v -covermode=count -coverprofile=coverage.out

or

make test
make test-coverage

generate-binary

go build -a -o seed-go-img cmd/Main.go

or

make build

create docker

make docker

run docker

make docker-run

some docs

license
code of conduct

project structure

├── api
├── cmd
├── docs
├── internal
└── web

namedescriptions
apiswagger api, any protocol and schema file are here
cmdmain application lives here
docsdesign and user documentations collected here
internalinternal application and libraries are here
webweb static files, htmls and css stored here

Further information see:

  1. Golang Project Structure
  2. Golang standard project layout

integrations

Using some free ci tools and code quality scanners. There's some really great tools for public projects, trying them here.

ServiceStatus
github integations
github codeQLCodeQL
azureBuild Status
circleciBuild Status
travic-ci.comBuild Status
appveyor.comBuild status
goreportcard.comGo Report Card
codeclimate.comMaintainability
Test Coverage

fork. clone. contribute and share!

# Packages

No description provided by the author
No description provided by the author