docs: update project layout desc (#194)

This commit is contained in:
Richard
2025-07-25 23:04:55 +08:00
committed by GitHub
parent 1e0d1f1c4f
commit 0b5e47a4e8
2 changed files with 71 additions and 40 deletions

View File

@@ -45,26 +45,41 @@ Eagle utilizes a classic layered structure and employs the Wire dependency injec
## Directory Structure ## Directory Structure
```shell ```shell
├── Makefile eagle-layout/
├── api ├── api/ # proto files and service interface definitions
├── cmd │ ├── helloworld/ # example or basic service proto definitions
├── config │ └── user/ # user-related proto definitions
├── docs ├── bin/ # compiled binary files
├── internal ├── cmd/ # service entry points, main.go and startup logic
│ ├── cache │ ├── server/ # main service entry
│ ├── handler │ ├── consumer/ # message consumer service entry
── middleware ── gen/ # code generation entry
│ ├── model ├── config/ # configuration files for multiple environments
├── dao ├── deploy/ # deployment files, e.g. Dockerfile, K8s configs
│ ├── ecode ├── internal/ # internal implementation, not for external use
│ ├── routers │ ├── dal/ # data access layer
├── server │ ├── db/ # database related code
└── service ├── model/ # data model definitions
├── logs ├── method/ # custom query methods
├── main.go └── query/ # gorm/gen generated query methods
├── pkg ├── cache/ # cache related code
├── test └── rpc/ # RPC/HTTP client code
└── scripts │ ├── ecode # define error code
│ ├── handler # receive user request
│ ├── repository/ # repository layer, wraps data access interfaces
│ ├── routers/ # route and middleware registration
│ ├── service/ # business logic layer
│ └── event/subscribe/ # event subscription, e.g. MQ handlers
├── logs/ # log output directory
├── scripts/ # script files
├── third_party/ # third-party dependencies or proto files
├── .github/ # GitHub workflows
├── .gitignore # Git ignore file
├── CHANGELOG.md # changelog
├── LICENSE # license
├── Makefile # build, test, code generation commands
├── README.md # project documentation
└── openapi.yaml # OpenAPI specification file
``` ```
## Installtion CLI ## Installtion CLI

View File

@@ -52,26 +52,42 @@
## 📗 目录结构 ## 📗 目录结构
```shell ```shell
├── Makefile # 项目管理文件 eagle-layout/
├── api # grpc客户端和Swagger 文档 ├── api/ # proto 文件及接口协议定义
├── cmd # 脚手架目录 │ ├── helloworld/ # 示例或基础服务的 proto 定义
├── config # 配置文件统一存放目录 │ └── user/ # 用户相关 proto 定义
├── docs # 框架相关文档 ├── bin/ # 编译生成的二进制文件
├── internal # 业务目录 ├── cmd/ # 服务入口main.go 及启动相关
│ ├── cache # 基于业务封装的cache │ ├── server/ # 主服务启动入口
│ ├── handler # http 接 │ ├── consumer/ # 消息消费服务入
── middleware # 自定义中间件 ── gen/ # 代码生成相关入口
│ ├── model # 数据库 model ├── config/ # 配置文件,支持多环境
├── dao # 数据访问层 ├── deploy/ # 部署相关,如 Dockerfile、K8s 配置
│ ├── ecode # 业务自定义错误码 ├── internal/ # 内部实现,禁止外部依赖
│ ├── routers # 业务路由 │ ├── dal/ # 数据访问层
│ ├── server # http server 和 grpc server │ ├── db/ # 数据库相关代码
└── service # 业务逻辑层 ├── model/ # 数据模型定义
├── logs # 存放日志的目录 ├── method/ # 自定义查询方法
├── main.go # 项目入口文件 └── query/ # gorm/gen 生成的查询方法
├── pkg # 公共的 package ├── cache/ # 缓存相关代码
├── test # 单元测试依赖的配置文件主要是供docker使用的一些环境配置文件 └── rpc/ # RPC/HTTP 客户端相关代码
└── scripts # 存放用于执行各种构建,安装,分析等操作的脚本 │ ├── ecode/ # 错误码定义
│ ├── event/subscribe/ # 事件订阅相关,如 MQ handler
│ ├── handler # 接受请用请求的接口目录
│ ├── repository/ # 仓储层,封装数据访问接口
│ ├── routers/ # 路由及中间件注册
│ ├── service/ # 业务逻辑层
│ └──
├── logs/ # 日志输出目录
├── scripts/ # 脚本文件
├── third_party/ # 第三方依赖或 proto 文件
├── .github/ # GitHub workflows
├── .gitignore # Git 忽略文件
├── CHANGELOG.md # 变更日志
├── LICENSE # 许可证
├── Makefile # 构建、测试、代码生成等命令
├── README.md # 项目说明
└── openapi.yaml # OpenAPI 规范
``` ```
## 🛠️ 快速开始 ## 🛠️ 快速开始