Sobes.tech
Senior

What frameworks, standards, and packages do you use in Go?

sobes.tech AI

Answer from AI

In Go, I often use the following frameworks and packages:

  • Gin — a lightweight HTTP framework for creating REST APIs.
  • Echo — another popular web framework with good performance.
  • GORM — an ORM for working with databases.
  • Cobra — for creating CLI applications.
  • Viper — for configuration management.
  • Testify — for convenient testing.

Regarding standards, I adhere to the official code style (gofmt), use context (context.Context) for managing request and goroutine lifetimes, and follow principles of clean architecture and modularity.

Example of a simple HTTP server on Gin:

package main

import (
    "github.com/gin-gonic/gin"
)

func main() {
    r := gin.Default()
    r.GET("/ping", func(c *gin.Context) {
        c.JSON(200, gin.H{"message": "pong"})
    })
    r.Run() // listens on :8080
}