pitsanujiw / go-boilerplate

golang boilerplate + fiber + kafka + sqlc + cache

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Golang Boilerplate

Build & Run Service

for local machine please install go version 1.8+ download and follow command below to start this service and please install docker desktop for support docker compose download

Setup before develop service

$ make setup

Build service

$ make build

How to run service

for running a service for a part of cli is service

$ make api

for running a service for a part of worker

$ make worker

Generate Swagger

$ make swag

Format and lint checking

$ make format

Testing

$ make test

or testing coverage

$ make test-coverage

Generate Go DB Code From SQL

Generates Go code from SQL queries defined in the .sql files in the pkg/database/queries/ directory.

sqlc generate

Requires Go SQLC 1.18

The settings are in sqlc.yaml

Setup and Installation

 	go install github.com/sqlc-dev/sqlc/cmd/sqlc@latest

for Linux

    curl -L https://packagecloud.io/golang-migrate/migrate/gpgkey| apt-key add -
    echo "deb https://packagecloud.io/golang-migrate/migrate/ubuntu/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/migrate.list
    apt-get update
    apt-get install -y migrate

How to create migration file

make postgres-migrate-new name=${name}                                   

How to migrate up

make migrate-up

How to migrate down

make migrate-down version=${version}

How to fix version

make migrate-fix version=${version}

About

golang boilerplate + fiber + kafka + sqlc + cache


Languages

Language:Go 89.4%Language:Makefile 9.7%Language:PLpgSQL 0.9%