使用gin-gonic编写Web服务的最佳实践是什么

In other frameworks like Ruby on Rails, they are having directory structure like where to keep model related code, where to keep view related code, where to keep controller related code and where to seed DB. Is there any directory organization in gin-gonic? Or Any suggestion?

Gin is not an opinionated framework.This is the directory structure I follow for REST services

  1. Contracts
    • Contains the contracts between requester and the service
    • request structure per resource
    • response structure per resource
    • error response structures
  2. Core
    • This directory contains code that does the actual work
    • It will be irrespective of the fact that the request originally was http
  3. HTTPService
    • routes
    • http handlers
    • code that handles http request etc.

The reasoning behind this approach is that the code base won't be much coupled to HTTP and later one may add ThriftService and the whole server is ready for being used as a thrift service