技術無關的全面提示,用於分析和記錄專案資料夾結構。自動偵測專案類型(.NET、Java、React、Angular、Python、Node.js、Flutter),產生詳細藍圖,包含視覺化選項、命名慣例、檔案放置模式及擴充範本,協助在各種技術堆疊中維持一致的程式碼組織。
專案資料夾結構藍圖產生器
設定變數
${PROJECT_TYPE="自動偵測|.NET|Java|React|Angular|Python|Node.js|Flutter|其他"}
<!-- 選擇主要技術 -->
${INCLUDES_MICROSERVICES="自動偵測|true|false"}
<!-- 是否為微服務架構? -->
${INCLUDES_FRONTEND="自動偵測|true|false"}
<!-- 專案是否包含前端元件? -->
${IS_MONOREPO="自動偵測|true|false"}
<!-- 是否為包含多個專案的單一儲存庫? -->
${VISUALIZATION_STYLE="ASCII|Markdown 清單|表格"}
<!-- 如何視覺化結構 -->
${DEPTH_LEVEL=1-5}
<!-- 詳細記錄的資料夾層級數 -->
${INCLUDE_FILE_COUNTS=true|false}
<!-- 是否包含檔案計數統計 -->
${INCLUDE_GENERATED_FOLDERS=true|false}
<!-- 是否包含自動產生的資料夾 -->
${INCLUDE_FILE_PATTERNS=true|false}
<!-- 是否記錄檔案命名/位置模式 -->
${INCLUDE_TEMPLATES=true|false}
<!-- 是否包含新功能的檔案/資料夾範本 -->
產生的提示
"分析專案的資料夾結構,並建立一份全面的『Project_Folders_Structure_Blueprint.md』文件,作為維持一致程式碼組織的權威指南。請採用以下方法:
初始自動偵測階段
${PROJECT_TYPE == "自動偵測" ?
"首先掃描資料夾結構,尋找能識別專案類型的關鍵檔案:
- 尋找方案/專案檔案(.sln、.csproj、.fsproj、.vbproj)以識別 .NET 專案
- 檢查建置檔案(pom.xml、build.gradle、settings.gradle)以識別 Java 專案
- 識別包含相依性的 package.json 以識別 JavaScript/TypeScript 專案
- 尋找特定框架檔案(angular.json、react-scripts 條目、next.config.js)
- 檢查 Python 專案識別符(requirements.txt、setup.py、pyproject.toml)
- 檢查行動應用程式識別符(pubspec.yaml、android/ios 資料夾)
- 記錄所有找到的技術特徵及其版本" :
"將分析重點放在 ${PROJECT_TYPE} 專案結構"}
${IS_MONOREPO == "自動偵測" ?
"透過以下方式判斷是否為單一儲存庫:
- 多個具有各自設定檔案的獨立專案
- 工作區設定檔案(lerna.json、nx.json、turborepo.json 等)
- 跨專案參考與共享相依性模式
- 根層級編排腳本與設定" : ""}
${INCLUDES_MICROSERVICES == "自動偵測" ?
"檢查微服務架構指標:
- 多個具有相似/重複結構的服務目錄
- 服務專用的 Dockerfile 或部署設定
- 服務間通訊模式(API、訊息代理)
- 服務註冊或發現設定
- API 閘道設定檔案
- 跨服務的共享函式庫或工具" : ""}
${INCLUDES_FRONTEND == "自動偵測" ?
"透過以下方式識別前端元件:
- Web 資產目錄(wwwroot、public、dist、static)
- UI 框架檔案(components、modules、pages)
- 前端建置設定(webpack、vite、rollup 等)
- 樣式表組織(CSS、SCSS、styled-components)
- 靜態資產組織(images、fonts、icons)" : ""}
1. 結構概覽
提供 ${PROJECT_TYPE == "自動偵測" ? "偵測到的專案類型" : PROJECT_TYPE} 專案組織原則與資料夾結構的高層級概覽:
- 記錄資料夾結構所反映的整體架構方法
- 識別主要的組織原則(依功能、依層級、依領域等)
- 注意程式碼庫中重複出現的結構模式
- 記錄可推斷的結構背後原理
${IS_MONOREPO == "自動偵測" ?
"若偵測為單一儲存庫,說明單一儲存庫的組織方式及專案間的關係。" :
IS_MONOREPO ? "說明單一儲存庫的組織方式及專案間的關係。" : ""}
${INCLUDES_MICROSERVICES == "自動偵測" ?
"若偵測到微服務,描述其結構與組織方式。" :
INCLUDES_MICROSERVICES ? "描述微服務的結構與組織方式。" : ""}
2. 目錄視覺化
${VISUALIZATION_STYLE == "ASCII" ?
"建立資料夾階層的 ASCII 樹狀圖表示,深度層級為 ${DEPTH_LEVEL}。" : ""}
${VISUALIZATION_STYLE == "Markdown 清單" ?
"使用巢狀 Markdown 清單表示資料夾階層,深度層級為 ${DEPTH_LEVEL}。" : ""}
${VISUALIZATION_STYLE == "表格" ?
"建立一個表格,欄位包含路徑、用途、內容類型與慣例。" : ""}
${INCLUDE_GENERATED_FOLDERS ?
"包含所有資料夾,包括自動產生的。" :
"排除自動產生的資料夾,如 bin/、obj/、node_modules/ 等。"}
3. 關鍵目錄分析
記錄每個重要目錄的用途、內容與模式:
${PROJECT_TYPE == "自動偵測" ?
"針對每個偵測到的技術,根據觀察到的使用模式分析目錄結構:" : ""}
${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "自動偵測") ?
"#### .NET 專案結構(若偵測到)
-
方案組織:
- 專案如何分組與關聯
- 方案資料夾組織模式
- 多目標專案模式
-
專案組織:
- 內部資料夾結構模式
- 原始碼組織方式
- 資源組織
- 專案相依性與參考
-
領域/功能組織:
- 業務領域或功能如何分離
- 領域邊界強制模式
-
層級組織:
- 關注點分離(Controllers、Services、Repositories 等)
- 層級互動與相依性模式
-
設定管理:
- 設定檔案位置與用途
- 環境特定設定
- 機密管理方式
-
測試專案組織:
- 測試專案結構與命名
- 測試分類與組織
- 測試資料與模擬位置" : ""}
${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Angular" || PROJECT_TYPE == "自動偵測") ?
"#### UI 專案結構(若偵測到)
-
元件組織:
- 元件資料夾結構模式
- 分組策略(依功能、類型等)
- 共享與功能特定元件
-
狀態管理:
- 狀態相關檔案組織
- 全域狀態的 Store 結構
- 區域狀態管理模式
-
路由組織:
- 路由定義位置
- 頁面/檢視元件組織
- 路由參數處理
-
API 整合:
- API 客戶端組織
- 服務層結構
- 資料擷取模式
-
資產管理:
- 靜態資源組織
- 圖片/媒體檔案結構
- 字型與圖示組織
-
樣式組織:
- CSS/SCSS 檔案結構
- 主題組織
- 樣式模組模式" : ""}
4. 檔案放置模式
${INCLUDE_FILE_PATTERNS ?
"記錄決定不同類型檔案應放置位置的模式:
-
設定檔案:
- 不同類型設定的位置
- 環境特定設定模式
-
模型/實體定義:
- 領域模型定義位置
- 資料傳輸物件(DTO)位置
- 結構定義位置
-
商業邏輯:
- 服務實作位置
- 業務規則組織
- 工具與輔助函式放置
-
介面定義:
- 介面與抽象定義位置
- 介面分組與組織方式
-
測試檔案:
- 單元測試位置模式
- 整合測試放置
- 測試工具與模擬位置
-
文件檔案:
- API 文件放置
- 內部文件組織
- README 檔案分佈" :
"記錄關鍵檔案類型在專案中的位置。"}
5. 命名與組織慣例
記錄專案中觀察到的命名與組織慣例:
-
檔案命名模式:
- 大小寫慣例(PascalCase、camelCase、kebab-case)
- 前綴與後綴模式
- 檔案名稱中的類型指示符
-
資料夾命名模式:
- 不同資料夾類型的命名慣例
- 階層式命名模式
- 分組與分類慣例
-
命名空間/模組模式:
- 命名空間/模組如何對應資料夾結構
- 匯入/using 陳述式組織
- 內部與公開 API 分離
-
組織模式:
- 程式碼共置策略
- 功能封裝方法
- 跨領域關注點組織
6. 導航與開發工作流程
提供導航與操作程式碼庫結構的指引:
-
進入點:
- 主要應用程式進入點
- 關鍵設定起點
- 理解專案的初始檔案
-
常見開發任務:
- 新增功能的位置
- 如何擴展現有功能
- 放置新測試的位置
- 設定修改位置
-
相依性模式:
- 資料夾間的相依性流向
- 匯入/參考模式
- 依賴注入註冊位置
${INCLUDE_FILE_COUNTS ?
"- 內容統計:
- 每個目錄的檔案數分析
- 程式碼分佈指標
- 複雜度集中區域" : ""}
7. 建置與輸出組織
記錄建置流程與輸出組織:
-
建置設定:
- 建置腳本位置與用途
- 建置管線組織
- 建置任務定義
-
輸出結構:
- 編譯/建置輸出位置
- 輸出組織模式
- 發佈套件結構
-
環境特定建置:
- 開發與生產差異
- 環境設定策略
- 建置變體組織
8. 技術特定組織
${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "自動偵測") ?
"#### .NET 特定結構模式(若偵測到)
-
專案檔案組織:
- 專案檔案結構與模式
- 目標框架設定
- 屬性群組組織
- 項目群組模式
-
組件組織:
- 組件命名模式
- 多組件架構
- 組件參考模式
-
資源組織:
- 內嵌資源模式
- 在地化檔案結構
- 靜態 Web 資產組織
-
套件管理:
- NuGet 設定位置
- 套件參考組織
- 套件版本管理" : ""}
${(PROJECT_TYPE == "Java" || PROJECT_TYPE == "自動偵測") ?
"#### Java 特定結構模式(若偵測到)
-
套件階層:
- 套件命名與巢狀慣例
- 領域與技術套件
- 可見性與存取模式
-
建置工具組織:
- Maven/Gradle 結構模式
- 模組組織
- 外掛設定模式
-
資源組織:
- 資源資料夾結構
- 環境特定資源
- 屬性檔案組織" : ""}
${(PROJECT_TYPE == "Node.js" || PROJECT_TYPE == "自動偵測") ?
"#### Node.js 特定結構模式(若偵測到)
-
模組組織:
- CommonJS 與 ESM 組織
- 內部模組模式
- 第三方相依性管理
-
腳本組織:
- npm/yarn 腳本定義模式
- 工具腳本位置
- 開發工具腳本
-
設定管理:
- 設定檔案位置
- 環境變數管理
- 機密管理方法" : ""}
9. 擴充與演進
記錄專案結構如何設計以進行擴充:
-
擴充點:
- 如何在維持慣例下新增模組/功能
- 外掛/擴充資料夾模式
- 自訂目錄結構
-
可擴充性模式:
- 結構如何因應較大功能
- 拆分大型模組的方法
- 程式碼分割策略
-
重構模式:
- 觀察到的常見重構方法
- 結構變更如何管理
- 增量重組模式
${INCLUDE_TEMPLATES ?
"### 10. 結構範本
提供遵循專案慣例的新元件建立範本:
-
新功能範本:
- 新增完整功能的資料夾結構
- 必要檔案類型及其位置
- 應遵循的命名模式
-
新元件範本:
- 典型元件的目錄結構
- 應包含的基本檔案
- 與現有結構的整合點
-
新服務範本:
- 新增服務的結構
- 介面與實作放置
- 設定與註冊模式
-
新測試結構:
- 測試專案/檔案的資料夾結構
- 測試檔案組織範本
- 測試資源組織" : ""}
${INCLUDE_TEMPLATES ? "11" : "10"}. 結構強制
記錄專案結構如何維護與強制執行:
-
結構驗證:
- 強制結構的工具/腳本
- 結構合規性的建置檢查
- 與結構相關的 linting 規則
-
文件實務:
- 結構變更如何記錄
- 架構決策記錄位置
- 結構演進歷史
在結尾包含關於維護此藍圖及其最後更新時間的章節。
"






