GithubHelp home page GithubHelp logo

udaya2899 / go-gin-starter Goto Github PK

View Code? Open in Web Editor NEW
68.0 6.0 5.0 111 KB

Opinionated Go starter with gin for REST API, logrus for logging, viper for config with added graceful shutdown

License: MIT License

Go 78.55% Makefile 5.97% Dockerfile 15.48%

go-gin-starter's Introduction

go-gin-starter

build Go Reference made-with-Go

license

stars

An opinionated starter for Go Backend projects using:

  • gin-gonic/gin as the REST framework
  • logrus for logging
  • viper for configs
  • Docker for containerization

To be added:

  • sqlc for type-safe SQL Go code generation
  • golang-migrate/migrate for migration
  • jwt authentication
  • casbin authorization
  • prometheus monitoring

Docker support

Run make docker-build-run to build the command and run the container. Note that the port is set as 8080 by default.

Verify by checking localhost:8080/ping. You should receive a pong

Contributing

Feel free to raise a PR with one of the features from "To be added" section.

If you want a new feature PR, raise an issue to discuss about it.

go-gin-starter's People

Contributors

udaya2899 avatar renovate[bot] avatar

Stargazers

Tien Do avatar  avatar  avatar Yerassyl Altay avatar Carlos Castillo avatar Sadam avatar Mahmudur Rahman avatar Jens Hümmer avatar  avatar Aleksandar Perisic avatar  avatar Holegots avatar Edward Palingayan avatar Prem Suresh avatar  avatar Tae Kim avatar Alec Roth avatar Abhishek Butola avatar Emmanouil Katefidis avatar maoring avatar Ferri Sutanto avatar Michael Rödel avatar  avatar Harshit mahjan avatar Diego Paris avatar 孔令飞 avatar Francis "Nik" Ridder avatar Federico D'Eredità avatar  avatar Milad Nekofar avatar Alexandre Richonnier avatar  avatar Jeremy avatar 木蝶山人 avatar Alabhya Pandey avatar Saurabh suman avatar  avatar Hazem Noor avatar  avatar 爱可可-爱生活 avatar Sathish Ramani avatar Fraser Smith avatar Jason Yu avatar Thomas Neal avatar Nick Monaco avatar  avatar Karthik Nayak avatar  avatar Anthony Lackey avatar Gie Es avatar Elias Lindblad avatar layzhi avatar André Afonso avatar mariodev avatar Roman avatar Andy Powell avatar Jon Brown avatar Lasse Haugen avatar David Andrian Chandra avatar Nikita avatar joep avatar  avatar Roman Garanin avatar Can Evgin avatar MousyBusiness avatar Santhosh Kumar avatar Mike Ruhl avatar Roger avatar

Watchers

James Cloos avatar layzhi avatar  avatar Arshad avatar Kyle Piper avatar Cem  Onal avatar

go-gin-starter's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

This repository currently has no open or pending branches.

Detected dependencies

dockerfile
Dockerfile
github-actions
.github/workflows/go.yml
  • actions/setup-go v5
  • actions/checkout v4
gomod
go.mod
  • go 1.22
  • github.com/fsnotify/fsnotify v1.7.0
  • github.com/gin-gonic/gin v1.10.0
  • github.com/lib/pq v1.10.9
  • github.com/sirupsen/logrus v1.9.3
  • github.com/spf13/viper v1.19.0

  • Check this box to trigger a request for Renovate to run again on this repository

Missing default `config.yml` in repo

Describe the bug
Missing default config.yml in repository causes make docker-build-run to fail:

Step 11/13 : COPY --from=build_base /tmp/go-gin-starter/config.yml /
COPY failed: stat tmp/go-gin-starter/config.yml: file does not exist
make: *** [docker-build-run] Error 1

To Reproduce
Steps to reproduce the behavior:

  1. make docker-build-run

Expected behavior
Successful build

Desktop (please complete the following information):

  • OS: macOS Catalina 10.15.7

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.