.
├── api -------------------------- 由protoc根据proto生成的api代码
├── build
│ ├── bin
│ └── package ------------------ Dockerfile之类跟打包有关的文件
├── cmd -------------------------- 工程启动的入口
├── configs ---------------------- 配置文件(如:<project-name>.yml)
├── docs ------------------------- 工程文档(如:swagger doc)
├── gen
│ ├── model -------------------- 由meta-egg生成的数据模型定义
│ └── repo --------------------- 由meta-egg生成的数据模型基础读写接口
├── go.mod
├── go.sum
├── internal
│ ├── biz ---------------------- 业务逻辑(通常是单实体的内在逻辑)
│ ├── common
│ │ ├── cerror --------------- 自定义错误
│ │ ├── constraint ----------- 业务约束(业务相关的常量或配置项等)
│ │ ├── contexts ------------- 上下文管理(如session、logger等)
│ │ └── resource ------------- 全局资源(如:db,外部服务客户端等)
│ ├── config ------------------- 配置管理
│ ├── handler
│ │ ├── grpc ----------------- GRPC服务的处理接口
│ │ └── http ----------------- HTTP服务的处理接口
│ ├── repo --------------------- 自定义的数据模型读写接口
│ │ ├── mock ----------------- 由mockgen生成的mock桩
│ │ └── option --------------- 自定义的数据结构(如FilterOption等)
│ ├── server
│ │ ├── grpc ----------------- GRPC服务监听及中间件
│ │ ├── http ----------------- HTTP服务监听及中间件
│ │ └── monitor -------------- pprof监控服务
│ └── usecase ------------------ 业务逻辑(通常是跨实体的业务块)
├── LICENSE
├── Makefile
├── _manifest -------------------- meta-egg工作区(包含原始数据模型定义)
│ ├── generated ---------------- 生成的原始文件(同于new命令的生成结果)
│ └── sql ---------------------- db命令生成的全量、增量sql,及元数据sql
├── pkg -------------------------- 组件包
├── proto ------------------------ Protobuf定义(包含自定义错误)
├── README.md
├── sql -------------------------- 工程的sql文件
└── third_party ------------------ 第三方服务包