包含 VitePress 文档站完整源码及全新自定义首页设计: - 自定义首页组件 (Home.vue):Hero + 终端动效 + 核心能力 + 架构展示 + 快速开始 + CTA - 自定义 Layout.vue:首页/文档页布局切换 - 金铜色品牌主题样式 - 完整文档页面(指南、API、更新日志、演示、社区) - SEO 配置(sitemap、robots、meta 标签)
2.8 KiB
2.8 KiB
| title |
|---|
| 项目结构说明 | MengStack目录规范详解 - MengStack官方文档 |
项目结构
mengstack/
├── cmd/
│ └── server/
│ └── main.go # 应用入口,Swagger 注解
├── configs/
│ └── config.yaml # 默认配置文件
├── docs/ # Swagger 自动生成文档
│ ├── docs.go
│ ├── swagger.json
│ └── swagger.yaml
├── internal/
│ ├── kernel/ # 第一层:零业务语义基础组件
│ │ └── response/ # 统一响应格式
│ ├── app/ # 第二层:应用基础设施
│ │ ├── cache/ # Redis 缓存模块
│ │ ├── database/ # PostgreSQL 数据库模块
│ │ ├── health/ # 健康检查
│ │ ├── middleware/ # 全局中间件(CORS、请求ID、日志)
│ │ └── app.go # fx 容器组装
│ ├── config/ # 配置加载(Viper)
│ ├── logger/ # 日志初始化(Zap)
│ └── modules/ # 第三层:业务模块
│ └── auth/ # 认证模块
│ ├── domain/ # 领域层:实体、值对象、接口定义
│ ├── application/ # 应用层:业务逻辑编排
│ ├── infrastructure/ # 基础设施层:GORM/Redis 实现
│ └── interfaces/ # 接口层:HTTP Handler + 路由
├── migrations/ # 数据库迁移文件
├── test/ # 集成测试
├── docker-compose.yml # Docker 编排
├── Makefile # 构建命令
├── AGENTS.md # AI 辅助开发指南
└── go.mod # Go 模块定义
目录职责
cmd/server/
应用入口,仅负责组装和启动。包含 Swagger 全局注解。
internal/kernel/
零业务语义的基础组件。不包含任何业务概念,只提供通用工具:
response/— 统一响应格式{code, message, data, trace_id}- 后续可扩展:
paginator/、errors/等
internal/app/
应用基础设施,连接 kernel 和外部世界:
database/— GORM + PostgreSQL 初始化和生命周期cache/— Redis 客户端初始化和生命周期middleware/— 请求 ID、请求日志、CORShealth/— 健康检查端点
internal/modules/
业务模块目录,每个模块独立自包含,遵循四层模式。
configs/
默认配置文件,运行时可通过环境变量覆盖。
migrations/
数据库迁移文件,使用 golang-migrate 管理。