universal-dev-standards 3.5.1-beta.1 → 3.5.1-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (433) hide show
  1. package/bin/uds.js +2 -0
  2. package/bundled/core/ai-instruction-standards.md +205 -0
  3. package/bundled/core/anti-hallucination.md +684 -0
  4. package/bundled/core/changelog-standards.md +556 -0
  5. package/bundled/core/checkin-standards.md +935 -0
  6. package/bundled/core/code-review-checklist.md +684 -0
  7. package/bundled/core/commit-message-guide.md +915 -0
  8. package/bundled/core/documentation-structure.md +1117 -0
  9. package/bundled/core/documentation-writing-standards.md +487 -0
  10. package/bundled/core/error-code-standards.md +382 -0
  11. package/bundled/core/git-workflow.md +859 -0
  12. package/bundled/core/logging-standards.md +323 -0
  13. package/bundled/core/project-structure.md +354 -0
  14. package/bundled/core/refactoring-standards.md +636 -0
  15. package/bundled/core/spec-driven-development.md +207 -0
  16. package/bundled/core/test-completeness-dimensions.md +536 -0
  17. package/bundled/core/test-driven-development.md +995 -0
  18. package/bundled/core/testing-standards.md +3061 -0
  19. package/bundled/core/versioning.md +902 -0
  20. package/bundled/locales/README.md +88 -0
  21. package/bundled/locales/zh-CN/CHANGELOG.md +705 -0
  22. package/bundled/locales/zh-CN/CLAUDE.md +213 -0
  23. package/bundled/locales/zh-CN/MAINTENANCE.md +689 -0
  24. package/bundled/locales/zh-CN/README.md +707 -0
  25. package/bundled/locales/zh-CN/STANDARDS-MAPPING.md +177 -0
  26. package/bundled/locales/zh-CN/adoption/ADOPTION-GUIDE.md +392 -0
  27. package/bundled/locales/zh-CN/adoption/STATIC-DYNAMIC-GUIDE.md +302 -0
  28. package/bundled/locales/zh-CN/adoption/checklists/enterprise.md +332 -0
  29. package/bundled/locales/zh-CN/adoption/checklists/minimal.md +141 -0
  30. package/bundled/locales/zh-CN/adoption/checklists/recommended.md +272 -0
  31. package/bundled/locales/zh-CN/ai/MAINTENANCE.md +739 -0
  32. package/bundled/locales/zh-CN/ai/options/changelog/auto-generated.ai.yaml +76 -0
  33. package/bundled/locales/zh-CN/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
  34. package/bundled/locales/zh-CN/ai/options/code-review/automated-review.ai.yaml +120 -0
  35. package/bundled/locales/zh-CN/ai/options/code-review/pair-programming.ai.yaml +109 -0
  36. package/bundled/locales/zh-CN/ai/options/code-review/pr-review.ai.yaml +104 -0
  37. package/bundled/locales/zh-CN/ai/options/commit-message/bilingual.ai.yaml +105 -0
  38. package/bundled/locales/zh-CN/ai/options/commit-message/english.ai.yaml +79 -0
  39. package/bundled/locales/zh-CN/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
  40. package/bundled/locales/zh-CN/ai/options/documentation/api-docs.ai.yaml +140 -0
  41. package/bundled/locales/zh-CN/ai/options/documentation/markdown-docs.ai.yaml +89 -0
  42. package/bundled/locales/zh-CN/ai/options/documentation/wiki-style.ai.yaml +119 -0
  43. package/bundled/locales/zh-CN/ai/options/git-workflow/gitflow.ai.yaml +133 -0
  44. package/bundled/locales/zh-CN/ai/options/git-workflow/github-flow.ai.yaml +73 -0
  45. package/bundled/locales/zh-CN/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
  46. package/bundled/locales/zh-CN/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
  47. package/bundled/locales/zh-CN/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
  48. package/bundled/locales/zh-CN/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
  49. package/bundled/locales/zh-CN/ai/options/project-structure/dotnet.ai.yaml +108 -0
  50. package/bundled/locales/zh-CN/ai/options/project-structure/go.ai.yaml +115 -0
  51. package/bundled/locales/zh-CN/ai/options/project-structure/java.ai.yaml +113 -0
  52. package/bundled/locales/zh-CN/ai/options/project-structure/kotlin.ai.yaml +123 -0
  53. package/bundled/locales/zh-CN/ai/options/project-structure/nodejs.ai.yaml +101 -0
  54. package/bundled/locales/zh-CN/ai/options/project-structure/php.ai.yaml +147 -0
  55. package/bundled/locales/zh-CN/ai/options/project-structure/python.ai.yaml +116 -0
  56. package/bundled/locales/zh-CN/ai/options/project-structure/ruby.ai.yaml +140 -0
  57. package/bundled/locales/zh-CN/ai/options/project-structure/rust.ai.yaml +117 -0
  58. package/bundled/locales/zh-CN/ai/options/project-structure/swift.ai.yaml +143 -0
  59. package/bundled/locales/zh-CN/ai/options/testing/contract-testing.ai.yaml +254 -0
  60. package/bundled/locales/zh-CN/ai/options/testing/e2e-testing.ai.yaml +116 -0
  61. package/bundled/locales/zh-CN/ai/options/testing/industry-pyramid.ai.yaml +144 -0
  62. package/bundled/locales/zh-CN/ai/options/testing/integration-testing.ai.yaml +90 -0
  63. package/bundled/locales/zh-CN/ai/options/testing/istqb-framework.ai.yaml +108 -0
  64. package/bundled/locales/zh-CN/ai/options/testing/performance-testing.ai.yaml +272 -0
  65. package/bundled/locales/zh-CN/ai/options/testing/security-testing.ai.yaml +160 -0
  66. package/bundled/locales/zh-CN/ai/options/testing/system-testing.ai.yaml +101 -0
  67. package/bundled/locales/zh-CN/ai/options/testing/unit-testing.ai.yaml +82 -0
  68. package/bundled/locales/zh-CN/ai/standards/anti-hallucination.ai.yaml +145 -0
  69. package/bundled/locales/zh-CN/ai/standards/changelog.ai.yaml +146 -0
  70. package/bundled/locales/zh-CN/ai/standards/checkin-standards.ai.yaml +170 -0
  71. package/bundled/locales/zh-CN/ai/standards/code-review.ai.yaml +148 -0
  72. package/bundled/locales/zh-CN/ai/standards/commit-message.ai.yaml +175 -0
  73. package/bundled/locales/zh-CN/ai/standards/documentation-structure.ai.yaml +124 -0
  74. package/bundled/locales/zh-CN/ai/standards/documentation-writing-standards.ai.yaml +190 -0
  75. package/bundled/locales/zh-CN/ai/standards/error-codes.ai.yaml +139 -0
  76. package/bundled/locales/zh-CN/ai/standards/git-workflow.ai.yaml +95 -0
  77. package/bundled/locales/zh-CN/ai/standards/logging.ai.yaml +128 -0
  78. package/bundled/locales/zh-CN/ai/standards/project-structure.ai.yaml +134 -0
  79. package/bundled/locales/zh-CN/ai/standards/spec-driven-development.ai.yaml +169 -0
  80. package/bundled/locales/zh-CN/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
  81. package/bundled/locales/zh-CN/ai/standards/testing.ai.yaml +137 -0
  82. package/bundled/locales/zh-CN/ai/standards/versioning.ai.yaml +211 -0
  83. package/bundled/locales/zh-CN/core/ai-instruction-standards.md +213 -0
  84. package/bundled/locales/zh-CN/core/anti-hallucination.md +691 -0
  85. package/bundled/locales/zh-CN/core/changelog-standards.md +147 -0
  86. package/bundled/locales/zh-CN/core/checkin-standards.md +943 -0
  87. package/bundled/locales/zh-CN/core/code-review-guide.md +693 -0
  88. package/bundled/locales/zh-CN/core/commit-message-guide.md +129 -0
  89. package/bundled/locales/zh-CN/core/documentation-structure.md +173 -0
  90. package/bundled/locales/zh-CN/core/documentation-writing-standards.md +495 -0
  91. package/bundled/locales/zh-CN/core/error-code-standards.md +180 -0
  92. package/bundled/locales/zh-CN/core/git-workflow.md +193 -0
  93. package/bundled/locales/zh-CN/core/logging-standards.md +174 -0
  94. package/bundled/locales/zh-CN/core/project-structure.md +184 -0
  95. package/bundled/locales/zh-CN/core/refactoring-standards.md +642 -0
  96. package/bundled/locales/zh-CN/core/spec-driven-development.md +215 -0
  97. package/bundled/locales/zh-CN/core/test-completeness-dimensions.md +544 -0
  98. package/bundled/locales/zh-CN/core/test-driven-development.md +1002 -0
  99. package/bundled/locales/zh-CN/core/testing-standards.md +170 -0
  100. package/bundled/locales/zh-CN/core/versioning.md +177 -0
  101. package/bundled/locales/zh-CN/docs/AI-AGENT-ROADMAP.md +303 -0
  102. package/bundled/locales/zh-CN/docs/CLI-INIT-OPTIONS.md +990 -0
  103. package/bundled/locales/zh-CN/docs/OPERATION-WORKFLOW.md +1064 -0
  104. package/bundled/locales/zh-CN/docs/USAGE-MODES-COMPARISON.md +333 -0
  105. package/bundled/locales/zh-CN/docs/WINDOWS-GUIDE.md +215 -0
  106. package/bundled/locales/zh-CN/integrations/codex/AGENTS.md +115 -0
  107. package/bundled/locales/zh-CN/integrations/codex/README.md +67 -0
  108. package/bundled/locales/zh-CN/integrations/gemini-cli/GEMINI.md +102 -0
  109. package/bundled/locales/zh-CN/integrations/gemini-cli/README.md +140 -0
  110. package/bundled/locales/zh-CN/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
  111. package/bundled/locales/zh-CN/integrations/github-copilot/README.md +167 -0
  112. package/bundled/locales/zh-CN/integrations/github-copilot/copilot-instructions.md +263 -0
  113. package/bundled/locales/zh-CN/integrations/github-copilot/skills-mapping.md +192 -0
  114. package/bundled/locales/zh-CN/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
  115. package/bundled/locales/zh-CN/integrations/google-antigravity/README.md +84 -0
  116. package/bundled/locales/zh-CN/integrations/opencode/AGENTS.md +111 -0
  117. package/bundled/locales/zh-CN/integrations/opencode/README.md +176 -0
  118. package/bundled/locales/zh-CN/integrations/opencode/skills-mapping.md +396 -0
  119. package/bundled/locales/zh-CN/integrations/openspec/AGENTS.md +301 -0
  120. package/bundled/locales/zh-CN/integrations/openspec/README.md +43 -0
  121. package/bundled/locales/zh-CN/integrations/spec-kit/AGENTS.md +184 -0
  122. package/bundled/locales/zh-CN/integrations/spec-kit/README.md +43 -0
  123. package/bundled/locales/zh-CN/options/commit-message/bilingual.md +161 -0
  124. package/bundled/locales/zh-CN/options/commit-message/english.md +137 -0
  125. package/bundled/locales/zh-CN/options/commit-message/traditional-chinese.md +162 -0
  126. package/bundled/locales/zh-CN/options/git-workflow/gitflow.md +147 -0
  127. package/bundled/locales/zh-CN/options/git-workflow/github-flow.md +124 -0
  128. package/bundled/locales/zh-CN/options/git-workflow/merge-commit.md +124 -0
  129. package/bundled/locales/zh-CN/options/git-workflow/rebase-ff.md +160 -0
  130. package/bundled/locales/zh-CN/options/git-workflow/squash-merge.md +117 -0
  131. package/bundled/locales/zh-CN/options/git-workflow/trunk-based.md +125 -0
  132. package/bundled/locales/zh-CN/options/project-structure/dotnet.md +183 -0
  133. package/bundled/locales/zh-CN/options/project-structure/go.md +226 -0
  134. package/bundled/locales/zh-CN/options/project-structure/java.md +213 -0
  135. package/bundled/locales/zh-CN/options/project-structure/nodejs.md +185 -0
  136. package/bundled/locales/zh-CN/options/project-structure/python.md +229 -0
  137. package/bundled/locales/zh-CN/options/testing/e2e-testing.md +207 -0
  138. package/bundled/locales/zh-CN/options/testing/integration-testing.md +230 -0
  139. package/bundled/locales/zh-CN/options/testing/system-testing.md +183 -0
  140. package/bundled/locales/zh-CN/options/testing/unit-testing.md +165 -0
  141. package/bundled/locales/zh-CN/skills/INTEGRATION-GUIDE.md +218 -0
  142. package/bundled/locales/zh-CN/skills/README.md +134 -0
  143. package/bundled/locales/zh-CN/skills/_shared/README.md +68 -0
  144. package/bundled/locales/zh-CN/skills/claude-code/CONTRIBUTING.template.md +151 -0
  145. package/bundled/locales/zh-CN/skills/claude-code/README.md +174 -0
  146. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  147. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
  148. package/bundled/locales/zh-CN/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
  149. package/bundled/locales/zh-CN/skills/claude-code/changelog-guide/SKILL.md +237 -0
  150. package/bundled/locales/zh-CN/skills/claude-code/checkin-assistant/SKILL.md +407 -0
  151. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/SKILL.md +154 -0
  152. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
  153. package/bundled/locales/zh-CN/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
  154. package/bundled/locales/zh-CN/skills/claude-code/commands/bdd.md +142 -0
  155. package/bundled/locales/zh-CN/skills/claude-code/commands/methodology.md +274 -0
  156. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/SKILL.md +191 -0
  157. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/conventional-commits.md +264 -0
  158. package/bundled/locales/zh-CN/skills/claude-code/commit-standards/language-options.md +172 -0
  159. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/SKILL.md +421 -0
  160. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
  161. package/bundled/locales/zh-CN/skills/claude-code/documentation-guide/readme-template.md +412 -0
  162. package/bundled/locales/zh-CN/skills/claude-code/error-code-guide/SKILL.md +269 -0
  163. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
  164. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
  165. package/bundled/locales/zh-CN/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
  166. package/bundled/locales/zh-CN/skills/claude-code/logging-guide/SKILL.md +285 -0
  167. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/SKILL.md +131 -0
  168. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/create-methodology.md +350 -0
  169. package/bundled/locales/zh-CN/skills/claude-code/methodology-system/runtime.md +279 -0
  170. package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  171. package/bundled/locales/zh-CN/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
  172. package/bundled/locales/zh-CN/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
  173. package/bundled/locales/zh-CN/skills/claude-code/release-standards/SKILL.md +191 -0
  174. package/bundled/locales/zh-CN/skills/claude-code/release-standards/changelog-format.md +247 -0
  175. package/bundled/locales/zh-CN/skills/claude-code/release-standards/release-workflow.md +345 -0
  176. package/bundled/locales/zh-CN/skills/claude-code/release-standards/semantic-versioning.md +250 -0
  177. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/SKILL.md +227 -0
  178. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
  179. package/bundled/locales/zh-CN/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
  180. package/bundled/locales/zh-CN/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
  181. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/SKILL.md +332 -0
  182. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/language-examples.md +639 -0
  183. package/bundled/locales/zh-CN/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
  184. package/bundled/locales/zh-CN/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
  185. package/bundled/locales/zh-CN/skills/claude-code/testing-guide/SKILL.md +234 -0
  186. package/bundled/locales/zh-CN/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
  187. package/bundled/locales/zh-CN/skills/cline/README.md +58 -0
  188. package/bundled/locales/zh-CN/skills/copilot/README.md +61 -0
  189. package/bundled/locales/zh-CN/skills/copilot/copilot-instructions.md +79 -0
  190. package/bundled/locales/zh-CN/skills/cursor/README.md +58 -0
  191. package/bundled/locales/zh-CN/skills/windsurf/README.md +59 -0
  192. package/bundled/locales/zh-TW/CHANGELOG.md +707 -0
  193. package/bundled/locales/zh-TW/CLAUDE.md +213 -0
  194. package/bundled/locales/zh-TW/MAINTENANCE.md +683 -0
  195. package/bundled/locales/zh-TW/README.md +687 -0
  196. package/bundled/locales/zh-TW/STANDARDS-MAPPING.md +177 -0
  197. package/bundled/locales/zh-TW/adoption/ADOPTION-GUIDE.md +392 -0
  198. package/bundled/locales/zh-TW/adoption/STATIC-DYNAMIC-GUIDE.md +299 -0
  199. package/bundled/locales/zh-TW/adoption/checklists/enterprise.md +332 -0
  200. package/bundled/locales/zh-TW/adoption/checklists/minimal.md +141 -0
  201. package/bundled/locales/zh-TW/adoption/checklists/recommended.md +272 -0
  202. package/bundled/locales/zh-TW/ai/MAINTENANCE.md +754 -0
  203. package/bundled/locales/zh-TW/ai/options/changelog/auto-generated.ai.yaml +76 -0
  204. package/bundled/locales/zh-TW/ai/options/changelog/keep-a-changelog.ai.yaml +99 -0
  205. package/bundled/locales/zh-TW/ai/options/code-review/automated-review.ai.yaml +120 -0
  206. package/bundled/locales/zh-TW/ai/options/code-review/pair-programming.ai.yaml +109 -0
  207. package/bundled/locales/zh-TW/ai/options/code-review/pr-review.ai.yaml +104 -0
  208. package/bundled/locales/zh-TW/ai/options/commit-message/bilingual.ai.yaml +105 -0
  209. package/bundled/locales/zh-TW/ai/options/commit-message/english.ai.yaml +79 -0
  210. package/bundled/locales/zh-TW/ai/options/commit-message/traditional-chinese.ai.yaml +100 -0
  211. package/bundled/locales/zh-TW/ai/options/documentation/api-docs.ai.yaml +140 -0
  212. package/bundled/locales/zh-TW/ai/options/documentation/markdown-docs.ai.yaml +89 -0
  213. package/bundled/locales/zh-TW/ai/options/documentation/wiki-style.ai.yaml +119 -0
  214. package/bundled/locales/zh-TW/ai/options/git-workflow/gitflow.ai.yaml +133 -0
  215. package/bundled/locales/zh-TW/ai/options/git-workflow/github-flow.ai.yaml +73 -0
  216. package/bundled/locales/zh-TW/ai/options/git-workflow/merge-commit.ai.yaml +88 -0
  217. package/bundled/locales/zh-TW/ai/options/git-workflow/rebase-ff.ai.yaml +113 -0
  218. package/bundled/locales/zh-TW/ai/options/git-workflow/squash-merge.ai.yaml +85 -0
  219. package/bundled/locales/zh-TW/ai/options/git-workflow/trunk-based.ai.yaml +117 -0
  220. package/bundled/locales/zh-TW/ai/options/project-structure/dotnet.ai.yaml +108 -0
  221. package/bundled/locales/zh-TW/ai/options/project-structure/go.ai.yaml +115 -0
  222. package/bundled/locales/zh-TW/ai/options/project-structure/java.ai.yaml +113 -0
  223. package/bundled/locales/zh-TW/ai/options/project-structure/kotlin.ai.yaml +123 -0
  224. package/bundled/locales/zh-TW/ai/options/project-structure/nodejs.ai.yaml +101 -0
  225. package/bundled/locales/zh-TW/ai/options/project-structure/php.ai.yaml +147 -0
  226. package/bundled/locales/zh-TW/ai/options/project-structure/python.ai.yaml +116 -0
  227. package/bundled/locales/zh-TW/ai/options/project-structure/ruby.ai.yaml +140 -0
  228. package/bundled/locales/zh-TW/ai/options/project-structure/rust.ai.yaml +117 -0
  229. package/bundled/locales/zh-TW/ai/options/project-structure/swift.ai.yaml +143 -0
  230. package/bundled/locales/zh-TW/ai/options/testing/contract-testing.ai.yaml +254 -0
  231. package/bundled/locales/zh-TW/ai/options/testing/e2e-testing.ai.yaml +116 -0
  232. package/bundled/locales/zh-TW/ai/options/testing/industry-pyramid.ai.yaml +144 -0
  233. package/bundled/locales/zh-TW/ai/options/testing/integration-testing.ai.yaml +90 -0
  234. package/bundled/locales/zh-TW/ai/options/testing/istqb-framework.ai.yaml +108 -0
  235. package/bundled/locales/zh-TW/ai/options/testing/performance-testing.ai.yaml +272 -0
  236. package/bundled/locales/zh-TW/ai/options/testing/security-testing.ai.yaml +160 -0
  237. package/bundled/locales/zh-TW/ai/options/testing/system-testing.ai.yaml +101 -0
  238. package/bundled/locales/zh-TW/ai/options/testing/unit-testing.ai.yaml +82 -0
  239. package/bundled/locales/zh-TW/ai/standards/anti-hallucination.ai.yaml +145 -0
  240. package/bundled/locales/zh-TW/ai/standards/changelog.ai.yaml +146 -0
  241. package/bundled/locales/zh-TW/ai/standards/checkin-standards.ai.yaml +170 -0
  242. package/bundled/locales/zh-TW/ai/standards/code-review.ai.yaml +148 -0
  243. package/bundled/locales/zh-TW/ai/standards/commit-message.ai.yaml +175 -0
  244. package/bundled/locales/zh-TW/ai/standards/documentation-structure.ai.yaml +124 -0
  245. package/bundled/locales/zh-TW/ai/standards/documentation-writing-standards.ai.yaml +190 -0
  246. package/bundled/locales/zh-TW/ai/standards/error-codes.ai.yaml +139 -0
  247. package/bundled/locales/zh-TW/ai/standards/git-workflow.ai.yaml +95 -0
  248. package/bundled/locales/zh-TW/ai/standards/logging.ai.yaml +128 -0
  249. package/bundled/locales/zh-TW/ai/standards/project-structure.ai.yaml +134 -0
  250. package/bundled/locales/zh-TW/ai/standards/spec-driven-development.ai.yaml +169 -0
  251. package/bundled/locales/zh-TW/ai/standards/test-completeness-dimensions.ai.yaml +220 -0
  252. package/bundled/locales/zh-TW/ai/standards/testing.ai.yaml +137 -0
  253. package/bundled/locales/zh-TW/ai/standards/versioning.ai.yaml +211 -0
  254. package/bundled/locales/zh-TW/core/ai-instruction-standards.md +213 -0
  255. package/bundled/locales/zh-TW/core/anti-hallucination.md +691 -0
  256. package/bundled/locales/zh-TW/core/changelog-standards.md +564 -0
  257. package/bundled/locales/zh-TW/core/checkin-standards.md +943 -0
  258. package/bundled/locales/zh-TW/core/code-review-checklist.md +693 -0
  259. package/bundled/locales/zh-TW/core/commit-message-guide.md +809 -0
  260. package/bundled/locales/zh-TW/core/documentation-structure.md +1125 -0
  261. package/bundled/locales/zh-TW/core/documentation-writing-standards.md +495 -0
  262. package/bundled/locales/zh-TW/core/error-code-standards.md +384 -0
  263. package/bundled/locales/zh-TW/core/git-workflow.md +860 -0
  264. package/bundled/locales/zh-TW/core/logging-standards.md +325 -0
  265. package/bundled/locales/zh-TW/core/project-structure.md +362 -0
  266. package/bundled/locales/zh-TW/core/refactoring-standards.md +642 -0
  267. package/bundled/locales/zh-TW/core/spec-driven-development.md +215 -0
  268. package/bundled/locales/zh-TW/core/test-completeness-dimensions.md +544 -0
  269. package/bundled/locales/zh-TW/core/test-driven-development.md +1004 -0
  270. package/bundled/locales/zh-TW/core/testing-standards.md +2158 -0
  271. package/bundled/locales/zh-TW/core/versioning.md +909 -0
  272. package/bundled/locales/zh-TW/docs/AI-AGENT-ROADMAP.md +303 -0
  273. package/bundled/locales/zh-TW/docs/CLI-INIT-OPTIONS.md +990 -0
  274. package/bundled/locales/zh-TW/docs/OPERATION-WORKFLOW.md +1064 -0
  275. package/bundled/locales/zh-TW/docs/USAGE-MODES-COMPARISON.md +333 -0
  276. package/bundled/locales/zh-TW/docs/WINDOWS-GUIDE.md +215 -0
  277. package/bundled/locales/zh-TW/integrations/codex/AGENTS.md +115 -0
  278. package/bundled/locales/zh-TW/integrations/codex/README.md +113 -0
  279. package/bundled/locales/zh-TW/integrations/gemini-cli/GEMINI.md +102 -0
  280. package/bundled/locales/zh-TW/integrations/gemini-cli/README.md +140 -0
  281. package/bundled/locales/zh-TW/integrations/github-copilot/COPILOT-CHAT-REFERENCE.md +269 -0
  282. package/bundled/locales/zh-TW/integrations/github-copilot/README.md +167 -0
  283. package/bundled/locales/zh-TW/integrations/github-copilot/copilot-instructions.md +263 -0
  284. package/bundled/locales/zh-TW/integrations/github-copilot/skills-mapping.md +192 -0
  285. package/bundled/locales/zh-TW/integrations/google-antigravity/INSTRUCTIONS.md +61 -0
  286. package/bundled/locales/zh-TW/integrations/google-antigravity/README.md +84 -0
  287. package/bundled/locales/zh-TW/integrations/opencode/AGENTS.md +111 -0
  288. package/bundled/locales/zh-TW/integrations/opencode/README.md +176 -0
  289. package/bundled/locales/zh-TW/integrations/opencode/skills-mapping.md +396 -0
  290. package/bundled/locales/zh-TW/integrations/openspec/AGENTS.md +301 -0
  291. package/bundled/locales/zh-TW/integrations/openspec/README.md +43 -0
  292. package/bundled/locales/zh-TW/integrations/spec-kit/AGENTS.md +184 -0
  293. package/bundled/locales/zh-TW/integrations/spec-kit/README.md +43 -0
  294. package/bundled/locales/zh-TW/options/commit-message/bilingual.md +161 -0
  295. package/bundled/locales/zh-TW/options/commit-message/english.md +137 -0
  296. package/bundled/locales/zh-TW/options/commit-message/traditional-chinese.md +162 -0
  297. package/bundled/locales/zh-TW/options/git-workflow/gitflow.md +147 -0
  298. package/bundled/locales/zh-TW/options/git-workflow/github-flow.md +124 -0
  299. package/bundled/locales/zh-TW/options/git-workflow/merge-commit.md +124 -0
  300. package/bundled/locales/zh-TW/options/git-workflow/rebase-ff.md +160 -0
  301. package/bundled/locales/zh-TW/options/git-workflow/squash-merge.md +117 -0
  302. package/bundled/locales/zh-TW/options/git-workflow/trunk-based.md +125 -0
  303. package/bundled/locales/zh-TW/options/project-structure/dotnet.md +183 -0
  304. package/bundled/locales/zh-TW/options/project-structure/go.md +226 -0
  305. package/bundled/locales/zh-TW/options/project-structure/java.md +213 -0
  306. package/bundled/locales/zh-TW/options/project-structure/nodejs.md +185 -0
  307. package/bundled/locales/zh-TW/options/project-structure/python.md +229 -0
  308. package/bundled/locales/zh-TW/options/testing/e2e-testing.md +207 -0
  309. package/bundled/locales/zh-TW/options/testing/integration-testing.md +230 -0
  310. package/bundled/locales/zh-TW/options/testing/system-testing.md +183 -0
  311. package/bundled/locales/zh-TW/options/testing/unit-testing.md +165 -0
  312. package/bundled/locales/zh-TW/skills/INTEGRATION-GUIDE.md +218 -0
  313. package/bundled/locales/zh-TW/skills/README.md +132 -0
  314. package/bundled/locales/zh-TW/skills/_shared/README.md +68 -0
  315. package/bundled/locales/zh-TW/skills/claude-code/CONTRIBUTING.template.md +151 -0
  316. package/bundled/locales/zh-TW/skills/claude-code/README.md +174 -0
  317. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  318. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +223 -0
  319. package/bundled/locales/zh-TW/skills/claude-code/ai-collaboration-standards/certainty-labels.md +132 -0
  320. package/bundled/locales/zh-TW/skills/claude-code/changelog-guide/SKILL.md +237 -0
  321. package/bundled/locales/zh-TW/skills/claude-code/checkin-assistant/SKILL.md +407 -0
  322. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/SKILL.md +154 -0
  323. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/checkin-checklist.md +257 -0
  324. package/bundled/locales/zh-TW/skills/claude-code/code-review-assistant/review-checklist.md +246 -0
  325. package/bundled/locales/zh-TW/skills/claude-code/commands/bdd.md +142 -0
  326. package/bundled/locales/zh-TW/skills/claude-code/commands/methodology.md +274 -0
  327. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/SKILL.md +191 -0
  328. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/conventional-commits.md +264 -0
  329. package/bundled/locales/zh-TW/skills/claude-code/commit-standards/language-options.md +172 -0
  330. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/SKILL.md +421 -0
  331. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/documentation-structure.md +357 -0
  332. package/bundled/locales/zh-TW/skills/claude-code/documentation-guide/readme-template.md +412 -0
  333. package/bundled/locales/zh-TW/skills/claude-code/error-code-guide/SKILL.md +269 -0
  334. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/SKILL.md +218 -0
  335. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/branch-naming.md +220 -0
  336. package/bundled/locales/zh-TW/skills/claude-code/git-workflow-guide/git-workflow.md +321 -0
  337. package/bundled/locales/zh-TW/skills/claude-code/logging-guide/SKILL.md +285 -0
  338. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/SKILL.md +131 -0
  339. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/create-methodology.md +350 -0
  340. package/bundled/locales/zh-TW/skills/claude-code/methodology-system/runtime.md +279 -0
  341. package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  342. package/bundled/locales/zh-TW/skills/claude-code/project-structure-guide/language-patterns.md +271 -0
  343. package/bundled/locales/zh-TW/skills/claude-code/refactoring-assistant/SKILL.md +162 -0
  344. package/bundled/locales/zh-TW/skills/claude-code/release-standards/SKILL.md +191 -0
  345. package/bundled/locales/zh-TW/skills/claude-code/release-standards/changelog-format.md +247 -0
  346. package/bundled/locales/zh-TW/skills/claude-code/release-standards/release-workflow.md +345 -0
  347. package/bundled/locales/zh-TW/skills/claude-code/release-standards/semantic-versioning.md +250 -0
  348. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/SKILL.md +227 -0
  349. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-checklist.md +325 -0
  350. package/bundled/locales/zh-TW/skills/claude-code/requirement-assistant/requirement-writing.md +399 -0
  351. package/bundled/locales/zh-TW/skills/claude-code/spec-driven-dev/SKILL.md +243 -0
  352. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/SKILL.md +332 -0
  353. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/language-examples.md +639 -0
  354. package/bundled/locales/zh-TW/skills/claude-code/tdd-assistant/tdd-workflow.md +486 -0
  355. package/bundled/locales/zh-TW/skills/claude-code/test-coverage-assistant/SKILL.md +282 -0
  356. package/bundled/locales/zh-TW/skills/claude-code/testing-guide/SKILL.md +234 -0
  357. package/bundled/locales/zh-TW/skills/claude-code/testing-guide/testing-pyramid.md +448 -0
  358. package/bundled/locales/zh-TW/skills/cline/README.md +58 -0
  359. package/bundled/locales/zh-TW/skills/copilot/README.md +61 -0
  360. package/bundled/locales/zh-TW/skills/copilot/copilot-instructions.md +79 -0
  361. package/bundled/locales/zh-TW/skills/cursor/README.md +58 -0
  362. package/bundled/locales/zh-TW/skills/windsurf/README.md +59 -0
  363. package/bundled/skills/claude-code/CONTRIBUTING.template.md +141 -0
  364. package/bundled/skills/claude-code/README.md +196 -0
  365. package/bundled/skills/claude-code/ai/standards/checkin.ai.yaml +21 -0
  366. package/bundled/skills/claude-code/ai/standards/commit.ai.yaml +20 -0
  367. package/bundled/skills/claude-code/ai/standards/refactoring.ai.yaml +34 -0
  368. package/bundled/skills/claude-code/ai/standards/testing.ai.yaml +41 -0
  369. package/bundled/skills/claude-code/ai-collaboration-standards/SKILL.md +175 -0
  370. package/bundled/skills/claude-code/ai-collaboration-standards/anti-hallucination.md +215 -0
  371. package/bundled/skills/claude-code/ai-collaboration-standards/certainty-labels.md +124 -0
  372. package/bundled/skills/claude-code/changelog-guide/SKILL.md +232 -0
  373. package/bundled/skills/claude-code/checkin-assistant/SKILL.md +402 -0
  374. package/bundled/skills/claude-code/code-review-assistant/SKILL.md +220 -0
  375. package/bundled/skills/claude-code/code-review-assistant/checkin-checklist.md +249 -0
  376. package/bundled/skills/claude-code/code-review-assistant/review-checklist.md +238 -0
  377. package/bundled/skills/claude-code/commands/README.md +78 -0
  378. package/bundled/skills/claude-code/commands/bdd.md +142 -0
  379. package/bundled/skills/claude-code/commands/changelog.md +57 -0
  380. package/bundled/skills/claude-code/commands/check.md +91 -0
  381. package/bundled/skills/claude-code/commands/commit.md +48 -0
  382. package/bundled/skills/claude-code/commands/config.md +97 -0
  383. package/bundled/skills/claude-code/commands/coverage.md +58 -0
  384. package/bundled/skills/claude-code/commands/docs.md +75 -0
  385. package/bundled/skills/claude-code/commands/init.md +88 -0
  386. package/bundled/skills/claude-code/commands/methodology.md +268 -0
  387. package/bundled/skills/claude-code/commands/release.md +50 -0
  388. package/bundled/skills/claude-code/commands/requirement.md +54 -0
  389. package/bundled/skills/claude-code/commands/review.md +50 -0
  390. package/bundled/skills/claude-code/commands/spec.md +69 -0
  391. package/bundled/skills/claude-code/commands/tdd.md +86 -0
  392. package/bundled/skills/claude-code/commands/update.md +122 -0
  393. package/bundled/skills/claude-code/commit-standards/SKILL.md +249 -0
  394. package/bundled/skills/claude-code/commit-standards/conventional-commits.md +256 -0
  395. package/bundled/skills/claude-code/commit-standards/language-options.md +164 -0
  396. package/bundled/skills/claude-code/documentation-guide/SKILL.md +416 -0
  397. package/bundled/skills/claude-code/documentation-guide/documentation-structure.md +349 -0
  398. package/bundled/skills/claude-code/documentation-guide/readme-template.md +404 -0
  399. package/bundled/skills/claude-code/error-code-guide/SKILL.md +264 -0
  400. package/bundled/skills/claude-code/git-workflow-guide/SKILL.md +226 -0
  401. package/bundled/skills/claude-code/git-workflow-guide/branch-naming.md +212 -0
  402. package/bundled/skills/claude-code/git-workflow-guide/git-workflow.md +313 -0
  403. package/bundled/skills/claude-code/logging-guide/SKILL.md +280 -0
  404. package/bundled/skills/claude-code/methodology-system/SKILL.md +215 -0
  405. package/bundled/skills/claude-code/methodology-system/create-methodology.md +450 -0
  406. package/bundled/skills/claude-code/methodology-system/runtime.md +271 -0
  407. package/bundled/skills/claude-code/project-structure-guide/SKILL.md +143 -0
  408. package/bundled/skills/claude-code/project-structure-guide/language-patterns.md +263 -0
  409. package/bundled/skills/claude-code/refactoring-assistant/SKILL.md +205 -0
  410. package/bundled/skills/claude-code/release-standards/SKILL.md +191 -0
  411. package/bundled/skills/claude-code/release-standards/changelog-format.md +239 -0
  412. package/bundled/skills/claude-code/release-standards/release-workflow.md +337 -0
  413. package/bundled/skills/claude-code/release-standards/semantic-versioning.md +242 -0
  414. package/bundled/skills/claude-code/requirement-assistant/SKILL.md +222 -0
  415. package/bundled/skills/claude-code/requirement-assistant/requirement-checklist.md +317 -0
  416. package/bundled/skills/claude-code/requirement-assistant/requirement-writing.md +391 -0
  417. package/bundled/skills/claude-code/spec-driven-dev/SKILL.md +238 -0
  418. package/bundled/skills/claude-code/tdd-assistant/SKILL.md +384 -0
  419. package/bundled/skills/claude-code/tdd-assistant/language-examples.md +1276 -0
  420. package/bundled/skills/claude-code/tdd-assistant/tdd-workflow.md +659 -0
  421. package/bundled/skills/claude-code/test-coverage-assistant/SKILL.md +277 -0
  422. package/bundled/skills/claude-code/testing-guide/SKILL.md +317 -0
  423. package/bundled/skills/claude-code/testing-guide/testing-pyramid.md +440 -0
  424. package/package.json +4 -2
  425. package/src/commands/check.js +38 -6
  426. package/src/commands/init.js +20 -6
  427. package/src/commands/list.js +7 -2
  428. package/src/commands/skills.js +0 -2
  429. package/src/commands/update.js +271 -0
  430. package/src/i18n/messages.js +161 -11
  431. package/src/utils/copier.js +63 -10
  432. package/src/utils/skills-installer.js +47 -11
  433. package/standards-registry.json +6 -3
@@ -0,0 +1,213 @@
1
+ ---
2
+ source: ../../../../options/project-structure/java.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Java 专案结构
10
+
11
+ > **语言**: [English](../../../../options/project-structure/java.md) | 繁体中文
12
+
13
+ **上层标准**: [专案结构](../../core/project-structure.md)
14
+
15
+ ---
16
+
17
+ ## 概述
18
+
19
+ 本文件定义 Java 专案的标准目录结构,特别是使用 Spring Boot 的专案。它遵循以功能为基础的套件组织,促进可维护性和清晰的边界。
20
+
21
+ ## 适用情境
22
+
23
+ - Spring Boot 应用程式
24
+ - 企业级 Java 应用程式
25
+ - REST 和 GraphQL API
26
+ - 微服务
27
+ - Maven/Gradle 专案
28
+
29
+ ## 目录结构
30
+
31
+ ```
32
+ project-root/
33
+ ├── src/
34
+ │ ├── main/
35
+ │ │ ├── java/
36
+ │ │ │ └── com/company/project/
37
+ │ │ │ ├── Application.java # 进入点
38
+ │ │ │ ├── config/ # 设定类别
39
+ │ │ │ │ ├── SecurityConfig.java
40
+ │ │ │ │ └── WebConfig.java
41
+ │ │ │ ├── modules/ # 功能模组
42
+ │ │ │ │ ├── users/
43
+ │ │ │ │ │ ├── User.java # 实体
44
+ │ │ │ │ │ ├── UserController.java
45
+ │ │ │ │ │ ├── UserService.java
46
+ │ │ │ │ │ ├── UserRepository.java
47
+ │ │ │ │ │ └── dto/
48
+ │ │ │ │ └── products/
49
+ │ │ │ ├── shared/ # 共用程式码
50
+ │ │ │ │ ├── exception/
51
+ │ │ │ │ └── util/
52
+ │ │ │ └── infrastructure/ # 外部整合
53
+ │ │ └── resources/
54
+ │ │ ├── application.yml
55
+ │ │ └── application-dev.yml
56
+ │ └── test/
57
+ │ └── java/
58
+ │ └── com/company/project/
59
+ ├── docs/
60
+ ├── pom.xml # Maven
61
+ ├── build.gradle # 或 Gradle
62
+ └── README.md
63
+ ```
64
+
65
+ ## 命名惯例
66
+
67
+ | 类型 | 惯例 | 范例 |
68
+ |------|------|------|
69
+ | 档案 | PascalCase.java | `UserService.java` |
70
+ | 套件 | lowercase | `com.company.project.users` |
71
+ | 类别 | PascalCase | `UserService` |
72
+ | 介面 | PascalCase | `UserRepository`(无 I 前缀)|
73
+ | 方法 | camelCase | `createUser()` |
74
+ | 常数 | UPPER_SNAKE_CASE | `MAX_RETRY_COUNT` |
75
+
76
+ ## 套件组织
77
+
78
+ ### 依功能组织(建议)
79
+
80
+ ```
81
+ com.company.project.modules.users # 好:功能导向
82
+ com.company.project.modules.products
83
+
84
+ com.company.project.services # 避免:技术层导向
85
+ com.company.project.repositories
86
+ ```
87
+
88
+ ## Spring Boot 层次
89
+
90
+ ### 实体
91
+
92
+ ```java
93
+ // com/company/project/modules/users/User.java
94
+ @Entity
95
+ @Table(name = "users")
96
+ public class User {
97
+
98
+ @Id
99
+ @GeneratedValue(strategy = GenerationType.UUID)
100
+ private UUID id;
101
+
102
+ @Column(nullable = false, unique = true)
103
+ private String email;
104
+
105
+ @Column(nullable = false)
106
+ private String name;
107
+
108
+ protected User() {} // For JPA
109
+
110
+ public User(String email, String name) {
111
+ this.email = email;
112
+ this.name = name;
113
+ }
114
+ }
115
+ ```
116
+
117
+ ### 服务
118
+
119
+ ```java
120
+ // com/company/project/modules/users/UserService.java
121
+ @Service
122
+ @Transactional
123
+ public class UserService {
124
+
125
+ private final UserRepository userRepository;
126
+
127
+ public UserService(UserRepository userRepository) {
128
+ this.userRepository = userRepository;
129
+ }
130
+
131
+ public User createUser(CreateUserRequest request) {
132
+ if (userRepository.existsByEmail(request.email())) {
133
+ throw new IllegalArgumentException("Email already registered");
134
+ }
135
+ User user = new User(request.email(), request.name());
136
+ return userRepository.save(user);
137
+ }
138
+ }
139
+ ```
140
+
141
+ ### 控制器
142
+
143
+ ```java
144
+ // com/company/project/modules/users/UserController.java
145
+ @RestController
146
+ @RequestMapping("/api/users")
147
+ public class UserController {
148
+
149
+ private final UserService userService;
150
+
151
+ public UserController(UserService userService) {
152
+ this.userService = userService;
153
+ }
154
+
155
+ @PostMapping
156
+ @ResponseStatus(HttpStatus.CREATED)
157
+ public UserResponse createUser(@Valid @RequestBody CreateUserRequest request) {
158
+ User user = userService.createUser(request);
159
+ return UserResponse.from(user);
160
+ }
161
+ }
162
+ ```
163
+
164
+ ### DTO
165
+
166
+ ```java
167
+ // com/company/project/modules/users/dto/CreateUserRequest.java
168
+ public record CreateUserRequest(
169
+ @NotBlank @Email String email,
170
+ @NotBlank String name
171
+ ) {}
172
+ ```
173
+
174
+ ## 设定
175
+
176
+ ### application.yml
177
+
178
+ ```yaml
179
+ spring:
180
+ application:
181
+ name: myproject
182
+ datasource:
183
+ url: jdbc:postgresql://localhost:5432/mydb
184
+ username: ${DB_USERNAME}
185
+ password: ${DB_PASSWORD}
186
+ jpa:
187
+ hibernate:
188
+ ddl-auto: validate
189
+ open-in-view: false
190
+ ```
191
+
192
+ ## 最佳实践
193
+
194
+ 1. **建构子注入** - 优先于栏位注入
195
+ 2. **依功能组织套件** - 而非技术层
196
+ 3. **DTO 分离** - 永远不直接暴露实体
197
+ 4. **DTO 使用 Records** - 不可变、简洁
198
+ 5. **使用 `@Transactional(readOnly = true)`** - 用于读取操作
199
+
200
+ ## 相关选项
201
+
202
+ - [Node.js](./nodejs.md) - Node.js 专案结构
203
+ - [Python](./python.md) - Python 专案结构
204
+ - [.NET](./dotnet.md) - .NET/C# 专案结构
205
+ - [Go](./go.md) - Go 专案结构
206
+
207
+ ---
208
+
209
+ ## 授权条款
210
+
211
+ 本文件采用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授权条款。
212
+
213
+ **来源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,185 @@
1
+ ---
2
+ source: ../../../../options/project-structure/nodejs.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Node.js 专案结构
10
+
11
+ > **语言**: [English](../../../../options/project-structure/nodejs.md) | 繁体中文
12
+
13
+ **上层标准**: [专案结构](../../core/project-structure.md)
14
+
15
+ ---
16
+
17
+ ## 概述
18
+
19
+ 本文件定义 Node.js 和 TypeScript 专案的标准目录结构。它遵循以功能为基础的组织模式,能从小型应用扩展到大型企业系统。
20
+
21
+ ## 适用情境
22
+
23
+ - Express、Fastify、NestJS 应用程式
24
+ - REST 和 GraphQL API
25
+ - 全端 JavaScript/TypeScript 专案
26
+ - 微服务
27
+
28
+ ## 目录结构
29
+
30
+ ```
31
+ project-root/
32
+ ├── src/
33
+ │ ├── index.ts # 应用程式进入点
34
+ │ ├── app.ts # Express/Fastify app 设定
35
+ │ ├── config/ # 设定档
36
+ │ │ ├── index.ts
37
+ │ │ ├── database.ts
38
+ │ │ └── env.ts
39
+ │ ├── modules/ # 功能模组(依功能组织)
40
+ │ │ ├── users/
41
+ │ │ │ ├── user.model.ts
42
+ │ │ │ ├── user.service.ts
43
+ │ │ │ ├── user.controller.ts
44
+ │ │ │ ├── user.routes.ts
45
+ │ │ │ ├── user.dto.ts
46
+ │ │ │ ├── user.test.ts
47
+ │ │ │ └── index.ts
48
+ │ │ ├── products/
49
+ │ │ └── orders/
50
+ │ ├── shared/ # 共用工具和类型
51
+ │ │ ├── middleware/
52
+ │ │ ├── utils/
53
+ │ │ └── types/
54
+ │ └── infrastructure/ # 外部服务整合
55
+ │ ├── database/
56
+ │ ├── cache/
57
+ │ └── messaging/
58
+ ├── tests/ # 整合/E2E 测试
59
+ ├── scripts/ # 建置/部署脚本
60
+ ├── docs/ # 文件
61
+ ├── package.json
62
+ ├── tsconfig.json
63
+ └── README.md
64
+ ```
65
+
66
+ ## 命名惯例
67
+
68
+ | 类型 | 惯例 | 范例 |
69
+ |------|------|------|
70
+ | 档案 | kebab-case | `user-profile.service.ts` |
71
+ | 目录 | kebab-case | `order-management/` |
72
+ | 类别 | PascalCase | `UserService` |
73
+ | 函式 | camelCase | `createUser()` |
74
+ | 常数 | UPPER_SNAKE_CASE | `MAX_RETRY_COUNT` |
75
+ | 介面 | PascalCase | `UserProfile` |
76
+
77
+ ## 档案后缀
78
+
79
+ | 后缀 | 用途 |
80
+ |------|------|
81
+ | `.model.ts` | 资料模型/实体 |
82
+ | `.service.ts` | 业务逻辑 |
83
+ | `.controller.ts` | HTTP 处理器 |
84
+ | `.routes.ts` | 路由定义 |
85
+ | `.dto.ts` | 资料传输物件 |
86
+ | `.test.ts` | 测试档案 |
87
+ | `.middleware.ts` | Express/Fastify 中介软体 |
88
+
89
+ ## 模组结构范例
90
+
91
+ ```typescript
92
+ // src/modules/users/index.ts
93
+ export { User } from './user.model';
94
+ export { UserService } from './user.service';
95
+ export { userRoutes } from './user.routes';
96
+ export type { CreateUserDto, UpdateUserDto } from './user.dto';
97
+
98
+ // 在其他模组中使用
99
+ import { User, UserService } from '@/modules/users';
100
+ ```
101
+
102
+ ## 设定
103
+
104
+ ### package.json 脚本
105
+
106
+ ```json
107
+ {
108
+ "scripts": {
109
+ "start": "node dist/index.js",
110
+ "dev": "ts-node-dev --respawn src/index.ts",
111
+ "build": "tsc",
112
+ "test": "vitest",
113
+ "test:watch": "vitest watch",
114
+ "lint": "eslint src --ext .ts"
115
+ }
116
+ }
117
+ ```
118
+
119
+ ### tsconfig.json
120
+
121
+ ```json
122
+ {
123
+ "compilerOptions": {
124
+ "target": "ES2022",
125
+ "module": "NodeNext",
126
+ "outDir": "./dist",
127
+ "rootDir": "./src",
128
+ "strict": true,
129
+ "paths": {
130
+ "@/*": ["./src/*"]
131
+ }
132
+ }
133
+ }
134
+ ```
135
+
136
+ ## 最佳实践
137
+
138
+ ### 1. 以功能组织
139
+
140
+ ```
141
+ # 好:依功能组织
142
+ src/modules/users/
143
+ src/modules/products/
144
+ src/modules/orders/
145
+
146
+ # 避免:依技术层组织
147
+ src/models/
148
+ src/services/
149
+ src/controllers/
150
+ ```
151
+
152
+ ### 2. Index 档案作为公开 API
153
+
154
+ ```typescript
155
+ // 每个模组只暴露需要的内容
156
+ // src/modules/users/index.ts
157
+ export { UserService } from './user.service';
158
+ export { User } from './user.model';
159
+ // 内部实作保持私有
160
+ ```
161
+
162
+ ### 3. 测试与原始码并置
163
+
164
+ ```
165
+ src/modules/users/
166
+ ├── user.service.ts
167
+ ├── user.service.test.ts # 单元测试与原始码并置
168
+ ├── user.controller.ts
169
+ └── user.controller.test.ts
170
+ ```
171
+
172
+ ## 相关选项
173
+
174
+ - [Python](./python.md) - Python 专案结构
175
+ - [.NET](./dotnet.md) - .NET/C# 专案结构
176
+ - [Java](./java.md) - Java/Spring 专案结构
177
+ - [Go](./go.md) - Go 专案结构
178
+
179
+ ---
180
+
181
+ ## 授权条款
182
+
183
+ 本文件采用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授权条款。
184
+
185
+ **来源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
@@ -0,0 +1,229 @@
1
+ ---
2
+ source: ../../../../options/project-structure/python.md
3
+ source_version: 1.0.0
4
+ translation_version: 1.0.0
5
+ last_synced: 2025-12-30
6
+ status: current
7
+ ---
8
+
9
+ # Python 专案结构
10
+
11
+ > **语言**: [English](../../../../options/project-structure/python.md) | 繁体中文
12
+
13
+ **上层标准**: [专案结构](../../core/project-structure.md)
14
+
15
+ ---
16
+
17
+ ## 概述
18
+
19
+ 本文件定义使用现代工具(如 Poetry、pytest 和类型提示)的 Python 专案标准目录结构。它遵循 src 布局模式以实现适当的套件隔离。
20
+
21
+ ## 适用情境
22
+
23
+ - FastAPI、Flask、Django 应用程式
24
+ - REST 和 GraphQL API
25
+ - 资料科学和机器学习专案
26
+ - CLI 应用程式
27
+ - Python 套件/函式库
28
+
29
+ ## 目录结构
30
+
31
+ ```
32
+ project-root/
33
+ ├── src/
34
+ │ └── myproject/ # 主套件(套件名称)
35
+ │ ├── __init__.py
36
+ │ ├── main.py # 应用程式进入点
37
+ │ ├── config/ # 设定
38
+ │ │ ├── __init__.py
39
+ │ │ └── settings.py
40
+ │ ├── modules/ # 功能模组
41
+ │ │ ├── __init__.py
42
+ │ │ ├── users/
43
+ │ │ │ ├── __init__.py
44
+ │ │ │ ├── models.py
45
+ │ │ │ ├── services.py
46
+ │ │ │ ├── routes.py
47
+ │ │ │ └── schemas.py
48
+ │ │ └── products/
49
+ │ ├── shared/ # 共用工具
50
+ │ │ ├── __init__.py
51
+ │ │ ├── exceptions.py
52
+ │ │ └── utils.py
53
+ │ └── infrastructure/ # 外部服务
54
+ │ ├── __init__.py
55
+ │ └── database.py
56
+ ├── tests/ # 测试
57
+ │ ├── __init__.py
58
+ │ ├── conftest.py # pytest fixtures
59
+ │ ├── unit/
60
+ │ └── integration/
61
+ ├── scripts/ # 工具脚本
62
+ ├── docs/ # 文件
63
+ ├── pyproject.toml # 专案设定
64
+ ├── .env.example
65
+ └── README.md
66
+ ```
67
+
68
+ ## 命名惯例
69
+
70
+ | 类型 | 惯例 | 范例 |
71
+ |------|------|------|
72
+ | 档案 | snake_case | `user_service.py` |
73
+ | 目录 | snake_case | `user_management/` |
74
+ | 类别 | PascalCase | `UserService` |
75
+ | 函式 | snake_case | `create_user()` |
76
+ | 常数 | UPPER_SNAKE_CASE | `MAX_RETRY_COUNT` |
77
+ | 私有 | _leading_underscore | `_internal_method()` |
78
+
79
+ ## 汇入顺序
80
+
81
+ ```python
82
+ # 标准函式库
83
+ import os
84
+ from typing import Optional, List
85
+
86
+ # 第三方套件
87
+ import requests
88
+ from fastapi import FastAPI, HTTPException
89
+
90
+ # 本地模组
91
+ from myproject.modules.users import UserService
92
+ from myproject.shared.utils import format_date
93
+ ```
94
+
95
+ ## 模组结构
96
+
97
+ ### 模型
98
+
99
+ ```python
100
+ # src/myproject/modules/users/models.py
101
+ from dataclasses import dataclass
102
+ from datetime import datetime
103
+
104
+ @dataclass
105
+ class User:
106
+ id: str
107
+ email: str
108
+ name: str
109
+ created_at: datetime
110
+ ```
111
+
112
+ ### 服务
113
+
114
+ ```python
115
+ # src/myproject/modules/users/services.py
116
+ from typing import Optional
117
+ from .models import User, CreateUserInput
118
+ from .repository import UserRepository
119
+
120
+ class UserService:
121
+ def __init__(self, repository: UserRepository):
122
+ self._repository = repository
123
+
124
+ async def create_user(self, input: CreateUserInput) -> User:
125
+ """建立新使用者。"""
126
+ existing = await self._repository.find_by_email(input.email)
127
+ if existing:
128
+ raise ValueError("Email already registered")
129
+ return await self._repository.create(input)
130
+ ```
131
+
132
+ ### 路由(FastAPI)
133
+
134
+ ```python
135
+ # src/myproject/modules/users/routes.py
136
+ from fastapi import APIRouter, HTTPException, Depends
137
+ from .services import UserService
138
+ from .schemas import UserCreate, UserResponse
139
+
140
+ router = APIRouter(prefix="/users", tags=["users"])
141
+
142
+ @router.post("/", response_model=UserResponse, status_code=201)
143
+ async def create_user(
144
+ user_data: UserCreate,
145
+ service: UserService = Depends(get_user_service)
146
+ ):
147
+ try:
148
+ user = await service.create_user(user_data)
149
+ return user
150
+ except ValueError as e:
151
+ raise HTTPException(status_code=400, detail=str(e))
152
+ ```
153
+
154
+ ## 设定
155
+
156
+ ### pyproject.toml
157
+
158
+ ```toml
159
+ [project]
160
+ name = "myproject"
161
+ version = "1.0.0"
162
+ requires-python = ">=3.10"
163
+ dependencies = [
164
+ "fastapi>=0.100.0",
165
+ "uvicorn>=0.23.0",
166
+ "pydantic>=2.0.0",
167
+ ]
168
+
169
+ [project.optional-dependencies]
170
+ dev = [
171
+ "pytest>=7.0.0",
172
+ "pytest-asyncio>=0.21.0",
173
+ "ruff>=0.1.0",
174
+ "mypy>=1.0.0",
175
+ ]
176
+
177
+ [tool.pytest.ini_options]
178
+ testpaths = ["tests"]
179
+ asyncio_mode = "auto"
180
+ ```
181
+
182
+ ## 最佳实践
183
+
184
+ ### 1. 使用 src 布局
185
+
186
+ ```
187
+ # 防止意外汇入未安装的套件
188
+ project/
189
+ ├── src/
190
+ │ └── myproject/ # 套件在此
191
+ └── tests/ # 测试汇入已安装的套件
192
+ ```
193
+
194
+ ### 2. 处处使用类型提示
195
+
196
+ ```python
197
+ from typing import Optional, List
198
+
199
+ def get_users(
200
+ limit: int = 10,
201
+ offset: int = 0
202
+ ) -> List[User]:
203
+ ...
204
+ ```
205
+
206
+ ### 3. __init__.py 作为公开 API
207
+
208
+ ```python
209
+ # 只汇出需要的内容
210
+ from .models import User
211
+ from .services import UserService
212
+
213
+ __all__ = ["User", "UserService"]
214
+ ```
215
+
216
+ ## 相关选项
217
+
218
+ - [Node.js](./nodejs.md) - Node.js 专案结构
219
+ - [.NET](./dotnet.md) - .NET/C# 专案结构
220
+ - [Java](./java.md) - Java/Spring 专案结构
221
+ - [Go](./go.md) - Go 专案结构
222
+
223
+ ---
224
+
225
+ ## 授权条款
226
+
227
+ 本文件采用 [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/) 授权条款。
228
+
229
+ **来源**:[universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)