Skip to content
Back to skills

Project Structure Guide

ASecurity

依各語言的最佳實踐組織專案目錄結構的指南。 Use when: 建立專案、重整結構、新增模組、設定建置流程、決定檔案該放哪裡。 Not for: 專門為 AI 導覽而設計的結構——請用 /ai-friendly-architecture;原地重整既有程式碼——請用 /refactor。 Keywords: project, structure, directory, layout, gitignore, scaffold, file placement, utils, helpers, shared, 專案結構, 目錄配置, 檔案擺放.

  • 75 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 4, 2026
developmenttypescriptpythonrustgojavarubyphpswiftkotlinnextjs

Works with

  • claude code
  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 21, 2026

npx -y skills add AsiaOstrich/universal-dev-standards --skill project-structure-guide --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Project Structure Guide?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Project Structure Guide
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/asiaostrich-project-structure-guide-d2defb59/badge)](https://www.skillsdirectory.com/skills/asiaostrich-project-structure-guide-d2defb59)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: project-structure-guide
source: ../../../../skills/project-structure-guide/SKILL.md
source_version: 1.1.0
translation_version: 1.2.0
last_synced: 2026-08-17
status: current
description: |
  依各語言的最佳實踐組織專案目錄結構的指南。
  Use when: 建立專案、重整結構、新增模組、設定建置流程、決定檔案該放哪裡。
  Not for: 專門為 AI 導覽而設計的結構——請用 /ai-friendly-architecture;原地重整既有程式碼——請用 /refactor。
  Keywords: project, structure, directory, layout, gitignore, scaffold, file placement, utils, helpers, shared, 專案結構, 目錄配置, 檔案擺放.
---

# 專案結構指南

> **Language**: [English](../../../../skills/project-structure-guide/SKILL.md) | 繁體中文

**版本**:1.1.0
**最後更新**:2026-03-04
**適用性**:Claude Code Skills

---

## 目的

此技能提供根據語言和框架慣例建構專案的指引,協助建立一致、可維護的目錄佈局。

## 觸發時機

在以下情況使用此技能:
- 建立新專案
- 重組現有專案結構
- 新增模組或功能
- 設定建構配置
- 建立 .gitignore 檔案
- 決定檔案的放置位置(程式碼、文件、設定、資源)
- 在 utils/、helpers/、shared/、lib/ 或 internal/ 之間做選擇
- 放置開發中間產物(腦力激盪、RFC、POC、技術調查)

## 支援的語言

| 語言 | 框架/模式 |
|------|-----------|
| Node.js | Express、NestJS、Next.js |
| Python | Django、Flask、FastAPI |
| Java | Spring Boot、Maven、Gradle |
| .NET | ASP.NET Core、Console |
| Go | 標準佈局、cmd/pkg |
| Rust | Binary、Library、Workspace |
| Kotlin | Gradle、Android、Multiplatform |
| PHP | Laravel、Symfony、PSR-4 |
| Ruby | Rails、Gem、Sinatra |
| Swift | SPM、iOS App、Vapor |

## 常見結構模式

### 標準目錄

```
project-root/
├── src/              # 原始碼
├── tests/            # 測試檔案
├── docs/             # 文件
├── tools/            # 建構/部署腳本
├── examples/         # 使用範例
├── config/           # 配置檔案
└── .github/          # GitHub 配置
```

### 建構輸出(始終 gitignore)

```
dist/                 # 發佈輸出
build/                # 編譯產物
out/                  # 輸出目錄
bin/                  # 二進位執行檔
```

## 語言特定指南

### Node.js

```
project/
├── src/
│   ├── index.js
│   ├── routes/
│   ├── controllers/
│   ├── services/
│   └── models/
├── tests/
├── package.json
└── .gitignore
```

### Python

```
project/
├── src/
│   └── package_name/
│       ├── __init__.py
│       └── main.py
├── tests/
├── pyproject.toml
└── .gitignore
```

### Go

```
project/
├── cmd/
│   └── appname/
│       └── main.go
├── internal/
├── pkg/
├── go.mod
└── .gitignore
```

## 快速操作

### 建立專案結構

當被要求建立專案時:
1. 詢問語言/框架
2. 生成適當的目錄結構
3. 建立必要的配置檔案
4. 生成 .gitignore

### 審查結構

審查現有結構時:
1. 檢查語言慣例
2. 驗證 gitignore 模式
3. 建議改進
4. 識別放錯位置的檔案

## 規則

1. **遵循語言慣例** - 每種語言都有既定模式
2. **分離關注點** - 將原始碼、測試、文件分開
3. **Gitignore 建構輸出** - 永不提交 dist/、build/、out/
4. **一致命名** - 使用語言適當的命名風格
5. **配置在根目錄** - 將配置檔案放在專案根目錄
6. **辨析目錄術語** - utils/(無狀態、通用)、helpers/(層級綁定)、shared/(跨模組)、lib/(包裝依賴)
7. **工作文件放 docs/working/** - 腦力激盪、RFC、POC、技術調查放在 docs/working/ 並進行生命週期管理
8. **生成碼分離** - 放在 src/generated/{type}/,永不與手寫程式碼混合

## 相關標準

- [各語言的專案結構](./language-patterns.md) — 逐語言的實際目錄配置(Node.js/TypeScript、Python、Go 等)。要為某個特定語言擺放專案結構時讀它。
- [核心:專案結構](../../core/project-structure.md)
- [核心:文件結構](../../core/documentation-structure.md)
- [指南:檔案歸檔決策指南](../../core/guides/file-placement-guide.md)
- [AI:專案結構選項](../../../../options/project-structure/)


## Next Steps Guidance | 下一步引導

After `/project-structure` completes, the AI assistant should suggest:

> **專案結構已建立或審查完成。建議下一步 / Project structure created or reviewed. Suggested next steps:**
> - 執行 `/sdd` 開始規格驅動開發,將專案結構納入正式規格 ⭐ **Recommended / 推薦** — 確保結構決策有規格追蹤 / Ensures structure decisions are tracked in specs
> - 執行 `/docs` 產生專案文件(README、ARCHITECTURE.md 等) — 讓結構決策有文件記錄 / Document structure decisions
> - 執行 `/ai-friendly-architecture` 設定 AI 上下文配置 — 讓 AI 助手更好地理解專案結構 / Help AI assistants understand the project structure

---

## Related Standards

- [Core: Project Structure](../../core/project-structure.md)
- [Core: Documentation Structure](../../core/documentation-structure.md)
- [Guide: File Placement Decision Guide](../../core/guides/file-placement-guide.md)
- [AI: Project Structure Options](../../ai/options/project-structure/)

Files in this skill

  • SKILL.md5.2 KB
  • language-patterns.md4.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…