project-structure.md 2.5 KB

專案結構

根目錄

.
├─ docs                    # 手冊資料夾
├─ cmd                     # 命令列工具
├─ frontend                # 使用 Vue 3 構建的前端
├─ server                  # 使用 Golang 構建的後端
├─ resources               # 其他資源,不參與構建
├─ template                # 用於 Nginx 的模板檔案
├─ app.example.ini         # 配置檔案的示例
├─ main.go                 # 伺服器入口
└─ ...

手冊資料夾

.
├─ docs
│  ├─ .vitepress           # 配置資料夾
│  │  ├─ config
│  │  └─ theme
│  ├─ public               # 資源
│  ├─ [language code]      # 翻譯,資料夾名為語言程式碼,例如 zh_CN, zh_TW
│  ├─ guide
│  │  └─ *.md              # 手冊 markdown 檔案
│  └─ index.md             # 首頁 markdown 檔案
└─ ...

前端

.
├─ frontend
│  ├─ public              # 公共資源
│  ├─ src                 # 原始碼
│  │  ├─ api              # 向後端發起請求的 API
│  │  ├─ assets           # 公共資源
│  │  ├─ components       # Vue 元件
│  │  ├─ language         # 翻譯,使用 vue3-gettext
│  │  ├─ layouts          # Vue 佈局
│  │  ├─ lib              # 庫檔案,如幫助函式
│  │  ├─ pinia            # 狀態管理
│  │  ├─ routes           # Vue 路由
│  │  ├─ views            # Vue 檢視
│  │  ├─ gettext.ts       # 定義翻譯
│  │  ├─ style.less       # 全域性樣式,使用 less 語法
│  │  ├─ dark.less        # 暗黑主題樣式,使用 less 語法
│  │  └─ ...
│  └─ ...
└─ ...

後端

.
├─ server
│  ├─ internal             # 內部包
│  │  └─ ...
│  ├─ api                  # 向前端提供的 API
│  ├─ model                # 自動生成的模型
│  ├─ query                # gen 自動生成的資料庫請求檔案
│  ├─ router               # 路由和中介軟體
│  ├─ service              # 服務檔案
│  ├─ settings             # 配置介面
│  ├─ test                 # 單元測試
│  └─ ...
├─ main.go                 # 後端入口
└─ ...

模板

.
├─ template
│  ├─ block                # Nginx 塊配置模板
│  ├─ conf                 # Nginx 配置模板
│  └─ template.go          # 嵌入模板檔案至後端
└─ ...