yodogawa 1.0.5 → 1.0.7
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.
- package/.windsurf/templates/project/04-design/04-design-system.md +261 -0
- package/.windsurf/workflows/a-010-DefineDesignSystem.md +210 -0
- package/.windsurf/workflows/{a-010-DefineDataModel.md → a-011-DefineDataModel.md} +9 -10
- package/.windsurf/workflows/{a-011-DefineAPISpec.md → a-012-DefineAPISpec.md} +12 -13
- package/.windsurf/workflows/{a-012-DefineArchitecture.md → a-013-DefineArchitecture.md} +13 -14
- package/.windsurf/workflows/{a-013-DefineInfrastructure.md → a-014-DefineInfrastructure.md} +11 -12
- package/.windsurf/workflows/{a-014-ReviewDesign.md → a-015-ReviewDesign.md} +19 -11
- package/CHANGELOG.md +43 -0
- package/README.md +17 -16
- package/package.json +4 -2
- /package/.windsurf/templates/project/04-design/{04-data-model.md → 05-data-model.md} +0 -0
- /package/.windsurf/templates/project/04-design/{05-api-spec.md → 06-api-spec.md} +0 -0
- /package/.windsurf/templates/project/04-design/{06-architecture.md → 07-architecture.md} +0 -0
- /package/.windsurf/templates/project/04-design/{07-infrastructure.md → 08-infrastructure.md} +0 -0
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
# デザインシステム
|
|
2
|
+
|
|
3
|
+
> 最終更新: YYYY-MM-DD
|
|
4
|
+
|
|
5
|
+
## 概要
|
|
6
|
+
|
|
7
|
+
このドキュメントでは、プロジェクト全体で使用するデザインシステムを定義します。
|
|
8
|
+
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
## カラーパレット
|
|
12
|
+
|
|
13
|
+
### Primary Colors
|
|
14
|
+
|
|
15
|
+
| 名前 | HEX | 用途 |
|
|
16
|
+
| ----------- | --------- | -------------- |
|
|
17
|
+
| primary-50 | `#eff6ff` | 背景(薄) |
|
|
18
|
+
| primary-100 | `#dbeafe` | ホバー状態 |
|
|
19
|
+
| primary-500 | `#3b82f6` | メインカラー |
|
|
20
|
+
| primary-600 | `#2563eb` | ホバー(濃) |
|
|
21
|
+
| primary-900 | `#1e3a8a` | テキスト(濃) |
|
|
22
|
+
|
|
23
|
+
### Secondary Colors
|
|
24
|
+
|
|
25
|
+
| 名前 | HEX | 用途 |
|
|
26
|
+
| ------------- | --------- | ---------- |
|
|
27
|
+
| secondary-500 | `#8b5cf6` | アクセント |
|
|
28
|
+
|
|
29
|
+
### Semantic Colors
|
|
30
|
+
|
|
31
|
+
| 名前 | HEX | 用途 |
|
|
32
|
+
| ------- | --------- | ------------ |
|
|
33
|
+
| success | `#22c55e` | 成功、完了 |
|
|
34
|
+
| warning | `#f59e0b` | 警告、注意 |
|
|
35
|
+
| error | `#ef4444` | エラー、削除 |
|
|
36
|
+
| info | `#0ea5e9` | 情報、ヘルプ |
|
|
37
|
+
|
|
38
|
+
### Neutral Colors
|
|
39
|
+
|
|
40
|
+
| 名前 | HEX | 用途 |
|
|
41
|
+
| -------- | --------- | ---------------- |
|
|
42
|
+
| gray-50 | `#f9fafb` | 背景(明) |
|
|
43
|
+
| gray-100 | `#f3f4f6` | カード背景 |
|
|
44
|
+
| gray-200 | `#e5e7eb` | ボーダー |
|
|
45
|
+
| gray-400 | `#9ca3af` | プレースホルダー |
|
|
46
|
+
| gray-500 | `#6b7280` | サブテキスト |
|
|
47
|
+
| gray-700 | `#374151` | 本文テキスト |
|
|
48
|
+
| gray-900 | `#111827` | 見出しテキスト |
|
|
49
|
+
|
|
50
|
+
### Dark Mode(必要な場合)
|
|
51
|
+
|
|
52
|
+
<!-- Dark Mode用のカラー定義 -->
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
56
|
+
## タイポグラフィ
|
|
57
|
+
|
|
58
|
+
### フォントファミリー
|
|
59
|
+
|
|
60
|
+
| 用途 | フォント |
|
|
61
|
+
| ------ | ----------------------------- |
|
|
62
|
+
| 見出し | `Inter`, `Noto Sans JP` |
|
|
63
|
+
| 本文 | `Inter`, `Noto Sans JP` |
|
|
64
|
+
| コード | `JetBrains Mono`, `monospace` |
|
|
65
|
+
|
|
66
|
+
### フォントサイズ
|
|
67
|
+
|
|
68
|
+
| 名前 | サイズ | 行間 | 用途 |
|
|
69
|
+
| ---- | ------ | ---- | ---------------- |
|
|
70
|
+
| xs | 12px | 1.5 | キャプション |
|
|
71
|
+
| sm | 14px | 1.5 | 補足テキスト |
|
|
72
|
+
| base | 16px | 1.5 | 本文 |
|
|
73
|
+
| lg | 18px | 1.5 | リード文 |
|
|
74
|
+
| xl | 20px | 1.4 | 小見出し |
|
|
75
|
+
| 2xl | 24px | 1.3 | セクション見出し |
|
|
76
|
+
| 3xl | 30px | 1.2 | ページタイトル |
|
|
77
|
+
| 4xl | 36px | 1.1 | ヒーロー見出し |
|
|
78
|
+
|
|
79
|
+
### フォントウェイト
|
|
80
|
+
|
|
81
|
+
| 名前 | 値 | 用途 |
|
|
82
|
+
| -------- | --- | ------------ |
|
|
83
|
+
| normal | 400 | 本文 |
|
|
84
|
+
| medium | 500 | 強調 |
|
|
85
|
+
| semibold | 600 | 見出し |
|
|
86
|
+
| bold | 700 | 重要な見出し |
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## スペーシング
|
|
91
|
+
|
|
92
|
+
### スケール(4px ベース)
|
|
93
|
+
|
|
94
|
+
| 名前 | 値 | ピクセル |
|
|
95
|
+
| ---- | ------- | -------- |
|
|
96
|
+
| 0 | 0 | 0px |
|
|
97
|
+
| 1 | 0.25rem | 4px |
|
|
98
|
+
| 2 | 0.5rem | 8px |
|
|
99
|
+
| 3 | 0.75rem | 12px |
|
|
100
|
+
| 4 | 1rem | 16px |
|
|
101
|
+
| 5 | 1.25rem | 20px |
|
|
102
|
+
| 6 | 1.5rem | 24px |
|
|
103
|
+
| 8 | 2rem | 32px |
|
|
104
|
+
| 10 | 2.5rem | 40px |
|
|
105
|
+
| 12 | 3rem | 48px |
|
|
106
|
+
| 16 | 4rem | 64px |
|
|
107
|
+
|
|
108
|
+
### 使用ガイドライン
|
|
109
|
+
|
|
110
|
+
- **コンポーネント内部**: 2〜4 (8〜16px)
|
|
111
|
+
- **セクション間**: 8〜12 (32〜48px)
|
|
112
|
+
- **ページ余白**: 4〜6 (16〜24px)
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## コンポーネントスタイル
|
|
117
|
+
|
|
118
|
+
### ボタン
|
|
119
|
+
|
|
120
|
+
#### バリアント
|
|
121
|
+
|
|
122
|
+
| バリアント | 背景 | テキスト | 用途 |
|
|
123
|
+
| ---------- | ----------- | ----------- | ------------------ |
|
|
124
|
+
| Primary | primary-500 | white | 主要アクション |
|
|
125
|
+
| Secondary | gray-100 | gray-700 | 副次アクション |
|
|
126
|
+
| Outline | transparent | primary-500 | 代替アクション |
|
|
127
|
+
| Ghost | transparent | gray-700 | 控えめなアクション |
|
|
128
|
+
| Danger | error | white | 削除、危険操作 |
|
|
129
|
+
|
|
130
|
+
#### サイズ
|
|
131
|
+
|
|
132
|
+
| サイズ | パディング | フォント |
|
|
133
|
+
| ------ | ---------- | -------- |
|
|
134
|
+
| sm | 8px 12px | 14px |
|
|
135
|
+
| md | 10px 16px | 16px |
|
|
136
|
+
| lg | 12px 20px | 18px |
|
|
137
|
+
|
|
138
|
+
#### ステート
|
|
139
|
+
|
|
140
|
+
- **Default**: 通常状態
|
|
141
|
+
- **Hover**: 明度を10%変更
|
|
142
|
+
- **Active**: 明度を20%変更
|
|
143
|
+
- **Disabled**: opacity: 0.5, cursor: not-allowed
|
|
144
|
+
- **Loading**: スピナー表示
|
|
145
|
+
|
|
146
|
+
### フォーム要素
|
|
147
|
+
|
|
148
|
+
#### Input
|
|
149
|
+
|
|
150
|
+
| プロパティ | 値 |
|
|
151
|
+
| ---------- | ------------------ |
|
|
152
|
+
| 高さ | 40px (md) |
|
|
153
|
+
| ボーダー | 1px solid gray-200 |
|
|
154
|
+
| 角丸 | 6px |
|
|
155
|
+
| Focus | ring-2 primary-500 |
|
|
156
|
+
| Error | border-error |
|
|
157
|
+
|
|
158
|
+
#### その他
|
|
159
|
+
|
|
160
|
+
- **Textarea**: Inputと同様、min-height: 100px
|
|
161
|
+
- **Select**: Inputと同様 + ドロップダウンアイコン
|
|
162
|
+
- **Checkbox/Radio**: 20px × 20px
|
|
163
|
+
|
|
164
|
+
### カード
|
|
165
|
+
|
|
166
|
+
| プロパティ | 値 |
|
|
167
|
+
| ---------- | ------------------------- |
|
|
168
|
+
| 背景 | white |
|
|
169
|
+
| ボーダー | 1px solid gray-200 |
|
|
170
|
+
| 角丸 | 8px |
|
|
171
|
+
| シャドウ | 0 1px 3px rgba(0,0,0,0.1) |
|
|
172
|
+
| パディング | 16px〜24px |
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## アイコン
|
|
177
|
+
|
|
178
|
+
### ライブラリ
|
|
179
|
+
|
|
180
|
+
- **推奨**: Lucide Icons / Heroicons
|
|
181
|
+
|
|
182
|
+
### サイズ
|
|
183
|
+
|
|
184
|
+
| 名前 | サイズ | 用途 |
|
|
185
|
+
| ---- | ------ | -------------- |
|
|
186
|
+
| sm | 16px | インライン |
|
|
187
|
+
| md | 20px | ボタン内 |
|
|
188
|
+
| lg | 24px | 単独表示 |
|
|
189
|
+
| xl | 32px | 特徴セクション |
|
|
190
|
+
|
|
191
|
+
### スタイル
|
|
192
|
+
|
|
193
|
+
- **統一**: Outline または Solid(混在させない)
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## アニメーション
|
|
198
|
+
|
|
199
|
+
### Duration
|
|
200
|
+
|
|
201
|
+
| 名前 | 値 | 用途 |
|
|
202
|
+
| ------ | ----- | ------------------ |
|
|
203
|
+
| fast | 150ms | ホバー、フォーカス |
|
|
204
|
+
| normal | 300ms | パネル開閉 |
|
|
205
|
+
| slow | 500ms | ページ遷移 |
|
|
206
|
+
|
|
207
|
+
### Easing
|
|
208
|
+
|
|
209
|
+
- **デフォルト**: `ease-in-out`
|
|
210
|
+
- **入場**: `ease-out`
|
|
211
|
+
- **退場**: `ease-in`
|
|
212
|
+
|
|
213
|
+
### 使用例
|
|
214
|
+
|
|
215
|
+
```css
|
|
216
|
+
.button {
|
|
217
|
+
transition: background-color 150ms ease-in-out;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
.modal {
|
|
221
|
+
transition:
|
|
222
|
+
opacity 300ms ease-out,
|
|
223
|
+
transform 300ms ease-out;
|
|
224
|
+
}
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
|
|
229
|
+
## CSS変数(参考実装)
|
|
230
|
+
|
|
231
|
+
```css
|
|
232
|
+
:root {
|
|
233
|
+
/* Colors */
|
|
234
|
+
--color-primary-500: #3b82f6;
|
|
235
|
+
--color-success: #22c55e;
|
|
236
|
+
--color-warning: #f59e0b;
|
|
237
|
+
--color-error: #ef4444;
|
|
238
|
+
|
|
239
|
+
/* Typography */
|
|
240
|
+
--font-sans: "Inter", "Noto Sans JP", sans-serif;
|
|
241
|
+
--font-mono: "JetBrains Mono", monospace;
|
|
242
|
+
|
|
243
|
+
/* Spacing */
|
|
244
|
+
--space-1: 0.25rem;
|
|
245
|
+
--space-2: 0.5rem;
|
|
246
|
+
--space-4: 1rem;
|
|
247
|
+
--space-8: 2rem;
|
|
248
|
+
|
|
249
|
+
/* Transitions */
|
|
250
|
+
--transition-fast: 150ms ease-in-out;
|
|
251
|
+
--transition-normal: 300ms ease-in-out;
|
|
252
|
+
}
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## 変更履歴
|
|
258
|
+
|
|
259
|
+
| バージョン | 日付 | 変更内容 |
|
|
260
|
+
| ---------- | ---------- | -------- |
|
|
261
|
+
| 1.0 | YYYY-MM-DD | 初版作成 |
|
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: プロジェクトのデザインシステム(カラー、タイポグラフィ、スペーシング、コンポーネントスタイル)を定義するワークフロー
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# DefineDesignSystem (a-010)
|
|
6
|
+
|
|
7
|
+
## 目的
|
|
8
|
+
|
|
9
|
+
- プロジェクト全体で一貫したビジュアルデザインを実現するためのデザインシステムを定義する。
|
|
10
|
+
- カラーパレット、タイポグラフィ、スペーシング、コンポーネントスタイルを標準化する。
|
|
11
|
+
- デザイナーと開発者が共通言語として使える仕様書を作成する。
|
|
12
|
+
|
|
13
|
+
## 前提
|
|
14
|
+
|
|
15
|
+
- `docs/project/design/03-screen-design.md` が作成されていること(画面設計が完了していること)。
|
|
16
|
+
- `docs/project/design/01-tech-stack.md` が作成されていること(使用するUIフレームワークが決定していること)。
|
|
17
|
+
|
|
18
|
+
## 手順
|
|
19
|
+
|
|
20
|
+
### 1. 既存ドキュメントの確認
|
|
21
|
+
|
|
22
|
+
- 以下のドキュメントを読み込む:
|
|
23
|
+
- `docs/project/design/01-tech-stack.md` - 使用するCSSフレームワーク(Tailwind, MUI等)
|
|
24
|
+
- `docs/project/design/03-screen-design.md` - 画面設計とレスポンシブポリシー
|
|
25
|
+
- ブランドガイドラインがあれば参照
|
|
26
|
+
|
|
27
|
+
### 2. テンプレートの準備
|
|
28
|
+
|
|
29
|
+
- テンプレートをコピーして作業用ファイルを作成する:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
cp ".windsurf/templates/project/04-design/04-design-system.md" "docs/project/design/04-design-system.md"
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 3. カラーパレットの定義
|
|
36
|
+
|
|
37
|
+
- **Primary Colors**: ブランドカラー(1〜2色)
|
|
38
|
+
- **Secondary Colors**: アクセントカラー
|
|
39
|
+
- **Semantic Colors**: Success, Warning, Error, Info
|
|
40
|
+
- **Neutral Colors**: グレースケール(背景、テキスト、ボーダー)
|
|
41
|
+
- **Dark Mode対応**: 必要に応じてダークテーマのカラーも定義
|
|
42
|
+
|
|
43
|
+
#### 出力例
|
|
44
|
+
|
|
45
|
+
```css
|
|
46
|
+
:root {
|
|
47
|
+
/* Primary */
|
|
48
|
+
--color-primary-50: #eff6ff;
|
|
49
|
+
--color-primary-500: #3b82f6;
|
|
50
|
+
--color-primary-900: #1e3a8a;
|
|
51
|
+
|
|
52
|
+
/* Semantic */
|
|
53
|
+
--color-success: #22c55e;
|
|
54
|
+
--color-warning: #f59e0b;
|
|
55
|
+
--color-error: #ef4444;
|
|
56
|
+
--color-info: #0ea5e9;
|
|
57
|
+
|
|
58
|
+
/* Neutral */
|
|
59
|
+
--color-gray-50: #f9fafb;
|
|
60
|
+
--color-gray-500: #6b7280;
|
|
61
|
+
--color-gray-900: #111827;
|
|
62
|
+
}
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 4. タイポグラフィの定義
|
|
66
|
+
|
|
67
|
+
- **フォントファミリー**: 見出し用、本文用、コード用
|
|
68
|
+
- **フォントサイズスケール**: xs, sm, base, lg, xl, 2xl, 3xl, 4xl
|
|
69
|
+
- **行間(Line Height)**: tight, normal, relaxed
|
|
70
|
+
- **フォントウェイト**: normal, medium, semibold, bold
|
|
71
|
+
|
|
72
|
+
#### 出力例
|
|
73
|
+
|
|
74
|
+
```css
|
|
75
|
+
:root {
|
|
76
|
+
/* Font Family */
|
|
77
|
+
--font-sans: "Inter", "Noto Sans JP", sans-serif;
|
|
78
|
+
--font-mono: "JetBrains Mono", monospace;
|
|
79
|
+
|
|
80
|
+
/* Font Size */
|
|
81
|
+
--text-xs: 0.75rem; /* 12px */
|
|
82
|
+
--text-sm: 0.875rem; /* 14px */
|
|
83
|
+
--text-base: 1rem; /* 16px */
|
|
84
|
+
--text-lg: 1.125rem; /* 18px */
|
|
85
|
+
--text-xl: 1.25rem; /* 20px */
|
|
86
|
+
--text-2xl: 1.5rem; /* 24px */
|
|
87
|
+
--text-3xl: 1.875rem; /* 30px */
|
|
88
|
+
--text-4xl: 2.25rem; /* 36px */
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 5. スペーシングシステムの定義
|
|
93
|
+
|
|
94
|
+
- **基本単位**: 4px または 8px ベース
|
|
95
|
+
- **スケール**: 0, 1, 2, 3, 4, 5, 6, 8, 10, 12, 16, 20, 24, 32, 40, 48, 64
|
|
96
|
+
- **用途**: margin, padding, gap
|
|
97
|
+
|
|
98
|
+
#### 出力例
|
|
99
|
+
|
|
100
|
+
```css
|
|
101
|
+
:root {
|
|
102
|
+
--space-0: 0;
|
|
103
|
+
--space-1: 0.25rem; /* 4px */
|
|
104
|
+
--space-2: 0.5rem; /* 8px */
|
|
105
|
+
--space-3: 0.75rem; /* 12px */
|
|
106
|
+
--space-4: 1rem; /* 16px */
|
|
107
|
+
--space-6: 1.5rem; /* 24px */
|
|
108
|
+
--space-8: 2rem; /* 32px */
|
|
109
|
+
--space-12: 3rem; /* 48px */
|
|
110
|
+
--space-16: 4rem; /* 64px */
|
|
111
|
+
}
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### 6. コンポーネントスタイルの定義
|
|
115
|
+
|
|
116
|
+
以下のコンポーネントについて、バリアント(種類)とステート(状態)を定義する:
|
|
117
|
+
|
|
118
|
+
#### 6.1 ボタン
|
|
119
|
+
|
|
120
|
+
- **バリアント**: Primary, Secondary, Outline, Ghost, Danger
|
|
121
|
+
- **サイズ**: sm, md, lg
|
|
122
|
+
- **ステート**: Default, Hover, Active, Disabled, Loading
|
|
123
|
+
|
|
124
|
+
#### 6.2 フォーム要素
|
|
125
|
+
|
|
126
|
+
- Input, Textarea, Select, Checkbox, Radio
|
|
127
|
+
- **ステート**: Default, Focus, Error, Disabled
|
|
128
|
+
|
|
129
|
+
#### 6.3 カード / コンテナ
|
|
130
|
+
|
|
131
|
+
- 角丸(border-radius)、シャドウ、パディング
|
|
132
|
+
|
|
133
|
+
#### 6.4 その他
|
|
134
|
+
|
|
135
|
+
- Badge, Tag, Avatar, Tooltip, Modal
|
|
136
|
+
|
|
137
|
+
### 7. アイコン・イラストガイドライン
|
|
138
|
+
|
|
139
|
+
- **アイコンライブラリ**: Lucide, Heroicons, Material Icons など
|
|
140
|
+
- **サイズ規定**: sm(16px), md(20px), lg(24px), xl(32px)
|
|
141
|
+
- **スタイル**: Outline / Filled の統一
|
|
142
|
+
|
|
143
|
+
### 8. アニメーション・トランジション
|
|
144
|
+
|
|
145
|
+
- **Duration**: fast(150ms), normal(300ms), slow(500ms)
|
|
146
|
+
- **Easing**: ease-in-out をデフォルトに
|
|
147
|
+
- **使用箇所**: hover, focus, モーダル開閉, ページ遷移
|
|
148
|
+
|
|
149
|
+
#### 出力例
|
|
150
|
+
|
|
151
|
+
```css
|
|
152
|
+
:root {
|
|
153
|
+
--transition-fast: 150ms ease-in-out;
|
|
154
|
+
--transition-normal: 300ms ease-in-out;
|
|
155
|
+
--transition-slow: 500ms ease-in-out;
|
|
156
|
+
}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### 9. ドキュメント作成
|
|
160
|
+
|
|
161
|
+
- `docs/project/design/04-design-system.md` を作成する。
|
|
162
|
+
- **必須セクション**:
|
|
163
|
+
- カラーパレット
|
|
164
|
+
- タイポグラフィ
|
|
165
|
+
- スペーシング
|
|
166
|
+
- コンポーネントスタイル(主要なもの)
|
|
167
|
+
|
|
168
|
+
### 10. 完了条件の確認
|
|
169
|
+
|
|
170
|
+
- 以下のチェックリストで確認:
|
|
171
|
+
- [ ] `docs/project/design/04-design-system.md` が作成されている
|
|
172
|
+
- [ ] カラーパレットが定義されている
|
|
173
|
+
- [ ] タイポグラフィスケールが定義されている
|
|
174
|
+
- [ ] スペーシングシステムが定義されている
|
|
175
|
+
- [ ] 主要コンポーネント(ボタン、フォーム)のスタイルが定義されている
|
|
176
|
+
|
|
177
|
+
### 11. Git への追加(オプション)
|
|
178
|
+
|
|
179
|
+
- ユーザーに確認:「作成したデザインシステムドキュメントを Git に追加しますか?」
|
|
180
|
+
- 「はい」の場合:
|
|
181
|
+
|
|
182
|
+
```bash
|
|
183
|
+
git add docs/project/design/04-design-system.md
|
|
184
|
+
git status
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
- 推奨コミットメッセージ:
|
|
188
|
+
|
|
189
|
+
```
|
|
190
|
+
docs: デザインシステムの定義
|
|
191
|
+
|
|
192
|
+
- カラーパレット、タイポグラフィ、スペーシングを定義
|
|
193
|
+
- 主要コンポーネントのスタイルガイドを追加
|
|
194
|
+
```
|
|
195
|
+
|
|
196
|
+
## 完了条件
|
|
197
|
+
|
|
198
|
+
- `docs/project/design/04-design-system.md` が作成されている。
|
|
199
|
+
- カラーパレット、タイポグラフィ、スペーシングが定義されている。
|
|
200
|
+
- 主要コンポーネントのスタイルが定義されている。
|
|
201
|
+
- ユーザーが内容を承認している。
|
|
202
|
+
|
|
203
|
+
## エスカレーション
|
|
204
|
+
|
|
205
|
+
- ブランドガイドラインが存在しない場合:
|
|
206
|
+
- 「ブランドカラーやフォントの指定がありますか?なければ汎用的なパレットを提案します。」と確認する。
|
|
207
|
+
- 使用するCSSフレームワークが未定の場合:
|
|
208
|
+
- 「TailwindやMUIなど、使用するフレームワークが決まっていると、そのデザイントークンに合わせた定義ができます。`DefineTechStack` (a-007) で技術スタックを決定しましょう。」と提案する。
|
|
209
|
+
- コンポーネントが多すぎる場合:
|
|
210
|
+
- 「まずは主要なコンポーネント(ボタン、フォーム、カード)から始めて、必要に応じて拡張しましょう。」と提案する。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: ドメインモデルと画面設計からデータベース構造(ERD)を定義し、エンティティ、属性、リレーションシップ、制約を明確化するワークフロー
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# DefineDataModel (a-
|
|
5
|
+
# DefineDataModel (a-011)
|
|
6
6
|
|
|
7
7
|
## 目的
|
|
8
8
|
|
|
@@ -34,7 +34,7 @@ description: ドメインモデルと画面設計からデータベース構造
|
|
|
34
34
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
35
35
|
|
|
36
36
|
```bash
|
|
37
|
-
cp ".windsurf/templates/project/04-design/
|
|
37
|
+
cp ".windsurf/templates/project/04-design/05-data-model.md" "docs/project/design/05-data-model.md"
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
### 3. エンティティの抽出と提案
|
|
@@ -73,7 +73,7 @@ description: ドメインモデルと画面設計からデータベース構造
|
|
|
73
73
|
|
|
74
74
|
### 6. ドキュメント作成
|
|
75
75
|
|
|
76
|
-
- `docs/project/design/
|
|
76
|
+
- `docs/project/design/05-data-model.md` に決定事項を記入する。
|
|
77
77
|
- **必須項目**:
|
|
78
78
|
- エンティティ一覧
|
|
79
79
|
- リレーションシップ定義
|
|
@@ -82,20 +82,19 @@ description: ドメインモデルと画面設計からデータベース構造
|
|
|
82
82
|
### 7. 完了条件と構造の確認
|
|
83
83
|
|
|
84
84
|
- 以下の完了条件を満たしているか、コマンドとチェックリストで確認してください:
|
|
85
|
-
|
|
86
85
|
1. **構造確認**:
|
|
87
86
|
|
|
88
87
|
```bash
|
|
89
88
|
# エンティティ一覧の確認
|
|
90
|
-
grep "## エンティティ一覧" docs/project/design/
|
|
89
|
+
grep "## エンティティ一覧" docs/project/design/05-data-model.md && echo "OK" || echo "MISSING: Entities"
|
|
91
90
|
# ERDの確認
|
|
92
|
-
grep "\`\`\`mermaid" docs/project/design/
|
|
91
|
+
grep "\`\`\`mermaid" docs/project/design/05-data-model.md && echo "OK" || echo "MISSING: ERD"
|
|
93
92
|
# リレーションシップ定義の確認
|
|
94
|
-
grep "## リレーションシップ" docs/project/design/
|
|
93
|
+
grep "## リレーションシップ" docs/project/design/05-data-model.md && echo "OK" || echo "MISSING: Relationships"
|
|
95
94
|
```
|
|
96
95
|
|
|
97
96
|
2. **チェックリスト**:
|
|
98
|
-
- [ ] `docs/project/design/
|
|
97
|
+
- [ ] `docs/project/design/05-data-model.md` が作成されている
|
|
99
98
|
- [ ] 全エンティティの物理名・論理名が定義されている
|
|
100
99
|
- [ ] ERDが正しくレンダリングされる
|
|
101
100
|
|
|
@@ -105,7 +104,7 @@ description: ドメインモデルと画面設計からデータベース構造
|
|
|
105
104
|
- 「はい」の場合、以下を実行:
|
|
106
105
|
|
|
107
106
|
```bash
|
|
108
|
-
git add docs/project/design/
|
|
107
|
+
git add docs/project/design/05-data-model.md
|
|
109
108
|
git status
|
|
110
109
|
```
|
|
111
110
|
|
|
@@ -120,7 +119,7 @@ description: ドメインモデルと画面設計からデータベース構造
|
|
|
120
119
|
|
|
121
120
|
## 完了条件
|
|
122
121
|
|
|
123
|
-
- `docs/project/design/
|
|
122
|
+
- `docs/project/design/05-data-model.md` が作成されている。
|
|
124
123
|
- データベーススキーマ(テーブル、カラム、型、制約)が定義されている。
|
|
125
124
|
- エンティティ間の関係性が可視化(ERD)されている。
|
|
126
125
|
- ユーザーが内容を承認している。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: データモデルと画面設計からAPI仕様を定義し、認証方式、エンドポイント一覧、共通レスポンス形式を明確化するワークフロー
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# DefineAPISpec (a-
|
|
5
|
+
# DefineAPISpec (a-012)
|
|
6
6
|
|
|
7
7
|
## 目的
|
|
8
8
|
|
|
@@ -15,7 +15,7 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
15
15
|
## 前提
|
|
16
16
|
|
|
17
17
|
- `docs/project/design/01-tech-stack.md` が作成されていること(APIスタイル選定済み)。
|
|
18
|
-
- `docs/project/design/
|
|
18
|
+
- `docs/project/design/05-data-model.md` が作成されていること。
|
|
19
19
|
- `docs/project/design/03-screen-design.md` が作成されていること。
|
|
20
20
|
- `docs/project/design/` ディレクトリが存在すること。
|
|
21
21
|
|
|
@@ -25,7 +25,7 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
25
25
|
|
|
26
26
|
- 必要なドキュメントを読み込む:
|
|
27
27
|
- `docs/project/design/01-tech-stack.md`
|
|
28
|
-
- `docs/project/design/
|
|
28
|
+
- `docs/project/design/05-data-model.md`
|
|
29
29
|
- `docs/project/design/03-screen-design.md`
|
|
30
30
|
|
|
31
31
|
- ドキュメントが不足している場合、対応するワークフローの実行を促す。
|
|
@@ -35,13 +35,13 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
35
35
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
36
36
|
|
|
37
37
|
```bash
|
|
38
|
-
cp ".windsurf/templates/project/04-design/
|
|
38
|
+
cp ".windsurf/templates/project/04-design/06-api-spec.md" "docs/project/design/06-api-spec.md"
|
|
39
39
|
```
|
|
40
40
|
|
|
41
41
|
### 3. APIスタイルの確認と提案
|
|
42
42
|
|
|
43
43
|
- 技術スタック(01-tech-stack.md)で選定されたAPIスタイル(REST, GraphQL等)を確認する。
|
|
44
|
-
- データモデル(
|
|
44
|
+
- データモデル(05-data-model.md)と画面設計(03-screen-design.md)から、必要なリソースと操作を抽出する。
|
|
45
45
|
- **エンドポイント案の提示**:
|
|
46
46
|
- 「以下のリソースに対するエンドポイントを定義します:」
|
|
47
47
|
- 「Users: 一覧, 詳細, 作成, 更新, 削除」
|
|
@@ -70,7 +70,7 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
70
70
|
|
|
71
71
|
### 5. ドキュメント作成
|
|
72
72
|
|
|
73
|
-
- `docs/project/design/
|
|
73
|
+
- `docs/project/design/06-api-spec.md` に決定事項を記入する。
|
|
74
74
|
- **必須項目**:
|
|
75
75
|
- 認証・認可仕様
|
|
76
76
|
- エンドポイント一覧(リソース別)
|
|
@@ -79,20 +79,19 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
79
79
|
### 6. 完了条件と構造の確認
|
|
80
80
|
|
|
81
81
|
- 以下の完了条件を満たしているか、コマンドとチェックリストで確認してください:
|
|
82
|
-
|
|
83
82
|
1. **構造確認**:
|
|
84
83
|
|
|
85
84
|
```bash
|
|
86
85
|
# 認証セクションの確認
|
|
87
|
-
grep "## 認証・認可" docs/project/design/
|
|
86
|
+
grep "## 認証・認可" docs/project/design/06-api-spec.md && echo "OK" || echo "MISSING: Auth section"
|
|
88
87
|
# エンドポイント一覧の確認
|
|
89
|
-
grep "## エンドポイント一覧" docs/project/design/
|
|
88
|
+
grep "## エンドポイント一覧" docs/project/design/06-api-spec.md && echo "OK" || echo "MISSING: Endpoints"
|
|
90
89
|
# レスポンス形式の確認
|
|
91
|
-
grep "## 共通レスポンス形式" docs/project/design/
|
|
90
|
+
grep "## 共通レスポンス形式" docs/project/design/06-api-spec.md && echo "OK" || echo "MISSING: Response format"
|
|
92
91
|
```
|
|
93
92
|
|
|
94
93
|
2. **チェックリスト**:
|
|
95
|
-
- [ ] `docs/project/design/
|
|
94
|
+
- [ ] `docs/project/design/06-api-spec.md` が作成されている
|
|
96
95
|
- [ ] 認証方式が明確に定義されている
|
|
97
96
|
- [ ] 主要なリソースのCRUDエンドポイントが網羅されている
|
|
98
97
|
|
|
@@ -102,7 +101,7 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
102
101
|
- 「はい」の場合、以下を実行:
|
|
103
102
|
|
|
104
103
|
```bash
|
|
105
|
-
git add docs/project/design/
|
|
104
|
+
git add docs/project/design/06-api-spec.md
|
|
106
105
|
git status
|
|
107
106
|
```
|
|
108
107
|
|
|
@@ -117,7 +116,7 @@ description: データモデルと画面設計からAPI仕様を定義し、認
|
|
|
117
116
|
|
|
118
117
|
## 完了条件
|
|
119
118
|
|
|
120
|
-
- `docs/project/design/
|
|
119
|
+
- `docs/project/design/06-api-spec.md` が作成されている。
|
|
121
120
|
- 認証・認可の仕組みが定義されている。
|
|
122
121
|
- エンドポイント一覧(メソッド、パス、認証要否)が定義されている。
|
|
123
122
|
- 共通レスポンス形式(成功/エラー)が定義されている。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: 技術スタック、リポジトリ構造、データモデル、API仕様を統合し、システム全体のアーキテクチャ設計とADRを定義するワークフロー
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# DefineArchitecture (a-
|
|
5
|
+
# DefineArchitecture (a-013)
|
|
6
6
|
|
|
7
7
|
## 目的
|
|
8
8
|
|
|
@@ -15,8 +15,8 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
15
15
|
|
|
16
16
|
- `docs/project/design/01-tech-stack.md` が作成されていること。
|
|
17
17
|
- `docs/project/design/02-repository-structure.md` が作成されていること。
|
|
18
|
-
- `docs/project/design/
|
|
19
|
-
- `docs/project/design/
|
|
18
|
+
- `docs/project/design/05-data-model.md` が作成されていること。
|
|
19
|
+
- `docs/project/design/06-api-spec.md` が作成されていること。
|
|
20
20
|
- `docs/project/design/` ディレクトリが存在すること。
|
|
21
21
|
|
|
22
22
|
## 手順
|
|
@@ -26,8 +26,8 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
26
26
|
- 必要なドキュメントを読み込む:
|
|
27
27
|
- `docs/project/design/01-tech-stack.md`
|
|
28
28
|
- `docs/project/design/02-repository-structure.md`
|
|
29
|
-
- `docs/project/design/
|
|
30
|
-
- `docs/project/design/
|
|
29
|
+
- `docs/project/design/05-data-model.md`
|
|
30
|
+
- `docs/project/design/06-api-spec.md`
|
|
31
31
|
|
|
32
32
|
- ドキュメントが不足している場合、対応するワークフローの実行を促す。
|
|
33
33
|
|
|
@@ -36,7 +36,7 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
36
36
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
|
-
cp ".windsurf/templates/project/04-design/
|
|
39
|
+
cp ".windsurf/templates/project/04-design/07-architecture.md" "docs/project/design/07-architecture.md"
|
|
40
40
|
```
|
|
41
41
|
|
|
42
42
|
### 3. アーキテクチャの提案
|
|
@@ -67,7 +67,7 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
67
67
|
|
|
68
68
|
### 5. ドキュメント作成
|
|
69
69
|
|
|
70
|
-
- `docs/project/design/
|
|
70
|
+
- `docs/project/design/07-architecture.md` に決定事項を記入する。
|
|
71
71
|
- **必須項目**:
|
|
72
72
|
- システムアーキテクチャ図 (Mermaid)
|
|
73
73
|
- 採用アーキテクチャパターンの説明
|
|
@@ -76,20 +76,19 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
76
76
|
### 6. 完了条件と構造の確認
|
|
77
77
|
|
|
78
78
|
- 以下の完了条件を満たしているか、コマンドとチェックリストで確認してください:
|
|
79
|
-
|
|
80
79
|
1. **構造確認**:
|
|
81
80
|
|
|
82
81
|
```bash
|
|
83
82
|
# アーキテクチャ図の確認
|
|
84
|
-
grep "\`\`\`mermaid" docs/project/design/
|
|
83
|
+
grep "\`\`\`mermaid" docs/project/design/07-architecture.md && echo "OK" || echo "MISSING: Architecture Diagram"
|
|
85
84
|
# パターン定義の確認
|
|
86
|
-
grep "## 採用アーキテクチャパターン" docs/project/design/
|
|
85
|
+
grep "## 採用アーキテクチャパターン" docs/project/design/07-architecture.md && echo "OK" || echo "MISSING: Pattern definition"
|
|
87
86
|
# ADRセクションの確認
|
|
88
|
-
grep "## ADR" docs/project/design/
|
|
87
|
+
grep "## ADR" docs/project/design/07-architecture.md && echo "OK" || echo "MISSING: ADR section"
|
|
89
88
|
```
|
|
90
89
|
|
|
91
90
|
2. **チェックリスト**:
|
|
92
|
-
- [ ] `docs/project/design/
|
|
91
|
+
- [ ] `docs/project/design/07-architecture.md` が作成されている
|
|
93
92
|
- [ ] システム全体像が視覚化されている
|
|
94
93
|
- [ ] 重要な技術選定の理由(ADR)が記録されている
|
|
95
94
|
|
|
@@ -99,7 +98,7 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
99
98
|
- 「はい」の場合、以下を実行:
|
|
100
99
|
|
|
101
100
|
```bash
|
|
102
|
-
git add docs/project/design/
|
|
101
|
+
git add docs/project/design/07-architecture.md
|
|
103
102
|
git status
|
|
104
103
|
```
|
|
105
104
|
|
|
@@ -114,7 +113,7 @@ description: 技術スタック、リポジトリ構造、データモデル、A
|
|
|
114
113
|
|
|
115
114
|
## 完了条件
|
|
116
115
|
|
|
117
|
-
- `docs/project/design/
|
|
116
|
+
- `docs/project/design/07-architecture.md` が作成されている。
|
|
118
117
|
- システム全体の構成要素と関係性が可視化されている。
|
|
119
118
|
- 技術選定の背景(ADR)が文書化され、将来の参照用に残されている。
|
|
120
119
|
- ユーザーが内容を承認している。
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
description: 技術スタックとアーキテクチャ設計を基に、インフラ構成図、環境構成、運用方針を定義するワークフロー
|
|
3
3
|
---
|
|
4
4
|
|
|
5
|
-
# DefineInfrastructure (a-
|
|
5
|
+
# DefineInfrastructure (a-014)
|
|
6
6
|
|
|
7
7
|
## 目的
|
|
8
8
|
|
|
@@ -14,7 +14,7 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
14
14
|
## 前提
|
|
15
15
|
|
|
16
16
|
- `docs/project/design/01-tech-stack.md` が作成されていること(デプロイ環境、インフラ技術選定済み)。
|
|
17
|
-
- `docs/project/design/
|
|
17
|
+
- `docs/project/design/07-architecture.md` が作成されていること(推奨)。
|
|
18
18
|
- `docs/project/design/` ディレクトリが存在すること。
|
|
19
19
|
|
|
20
20
|
## 手順
|
|
@@ -23,7 +23,7 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
23
23
|
|
|
24
24
|
- 必要なドキュメントを読み込む:
|
|
25
25
|
- `docs/project/design/01-tech-stack.md`
|
|
26
|
-
- `docs/project/design/
|
|
26
|
+
- `docs/project/design/07-architecture.md`
|
|
27
27
|
|
|
28
28
|
- ドキュメントが不足している場合、対応するワークフローの実行を促す。
|
|
29
29
|
|
|
@@ -32,7 +32,7 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
32
32
|
- テンプレートをコピーして作業用ファイルを作成する:
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
|
-
cp ".windsurf/templates/project/04-design/
|
|
35
|
+
cp ".windsurf/templates/project/04-design/08-infrastructure.md" "docs/project/design/08-infrastructure.md"
|
|
36
36
|
```
|
|
37
37
|
|
|
38
38
|
### 3. インフラ構成の提案
|
|
@@ -68,7 +68,7 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
68
68
|
|
|
69
69
|
### 5. ドキュメント作成
|
|
70
70
|
|
|
71
|
-
- `docs/project/design/
|
|
71
|
+
- `docs/project/design/08-infrastructure.md` に決定事項を記入する。
|
|
72
72
|
- **必須項目**:
|
|
73
73
|
- インフラ構成図 (Mermaid)
|
|
74
74
|
- 環境構成表
|
|
@@ -77,20 +77,19 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
77
77
|
### 6. 完了条件と構造の確認
|
|
78
78
|
|
|
79
79
|
- 以下の完了条件を満たしているか、コマンドとチェックリストで確認してください:
|
|
80
|
-
|
|
81
80
|
1. **構造確認**:
|
|
82
81
|
|
|
83
82
|
```bash
|
|
84
83
|
# インフラ構成図の確認
|
|
85
|
-
grep "\`\`\`mermaid" docs/project/design/
|
|
84
|
+
grep "\`\`\`mermaid" docs/project/design/08-infrastructure.md && echo "OK" || echo "MISSING: Infra Diagram"
|
|
86
85
|
# 環境構成の確認
|
|
87
|
-
grep "## 環境構成" docs/project/design/
|
|
86
|
+
grep "## 環境構成" docs/project/design/08-infrastructure.md && echo "OK" || echo "MISSING: Environments"
|
|
88
87
|
# 運用方針の確認
|
|
89
|
-
grep "## 主要な運用方針" docs/project/design/
|
|
88
|
+
grep "## 主要な運用方針" docs/project/design/08-infrastructure.md && echo "OK" || echo "MISSING: Operations"
|
|
90
89
|
```
|
|
91
90
|
|
|
92
91
|
2. **チェックリスト**:
|
|
93
|
-
- [ ] `docs/project/design/
|
|
92
|
+
- [ ] `docs/project/design/08-infrastructure.md` が作成されている
|
|
94
93
|
- [ ] 本番環境の構成(冗長化など)が明確になっている
|
|
95
94
|
- [ ] バックアップや監視の方針が記録されている
|
|
96
95
|
|
|
@@ -100,7 +99,7 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
100
99
|
- 「はい」の場合、以下を実行:
|
|
101
100
|
|
|
102
101
|
```bash
|
|
103
|
-
git add docs/project/design/
|
|
102
|
+
git add docs/project/design/08-infrastructure.md
|
|
104
103
|
git status
|
|
105
104
|
```
|
|
106
105
|
|
|
@@ -115,7 +114,7 @@ description: 技術スタックとアーキテクチャ設計を基に、イン
|
|
|
115
114
|
|
|
116
115
|
## 完了条件
|
|
117
116
|
|
|
118
|
-
- `docs/project/design/
|
|
117
|
+
- `docs/project/design/08-infrastructure.md` が作成されている。
|
|
119
118
|
- インフラの物理構成とネットワーク構成が可視化されている。
|
|
120
119
|
- 環境ごとの差異が明確になっている。
|
|
121
120
|
- 運用上の重要事項(バックアップ、セキュリティ)が定義されている。
|
|
@@ -3,7 +3,7 @@ description: 設計ドキュメント間の一貫性をチェックし、要件
|
|
|
3
3
|
auto_execution_mode: 1
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# ReviewDesign (a-
|
|
6
|
+
# ReviewDesign (a-015)
|
|
7
7
|
|
|
8
8
|
## 目的
|
|
9
9
|
|
|
@@ -19,10 +19,10 @@ auto_execution_mode: 1
|
|
|
19
19
|
- `docs/project/design/01-tech-stack.md`
|
|
20
20
|
- `docs/project/design/02-repository-structure.md`
|
|
21
21
|
- `docs/project/design/03-screen-design.md`
|
|
22
|
-
- `docs/project/design/
|
|
23
|
-
- `docs/project/design/
|
|
24
|
-
- `docs/project/design/
|
|
25
|
-
- `docs/project/design/
|
|
22
|
+
- `docs/project/design/05-data-model.md`
|
|
23
|
+
- `docs/project/design/06-api-spec.md`
|
|
24
|
+
- `docs/project/design/07-architecture.md`
|
|
25
|
+
- `docs/project/design/08-infrastructure.md`
|
|
26
26
|
|
|
27
27
|
## 手順
|
|
28
28
|
|
|
@@ -42,17 +42,17 @@ auto_execution_mode: 1
|
|
|
42
42
|
|
|
43
43
|
#### 2.1 テックスタック ↔ アーキテクチャ
|
|
44
44
|
|
|
45
|
-
- **整合性**: 選定された技術(01-tech-stack.md)がアーキテクチャ図(
|
|
45
|
+
- **整合性**: 選定された技術(01-tech-stack.md)がアーキテクチャ図(07-architecture.md)のコンポーネントと一致しているか。
|
|
46
46
|
- **ADR**: 重要な技術選定理由がADRとして記録されているか。
|
|
47
47
|
|
|
48
48
|
#### 2.2 データモデル ↔ ドメインモデル
|
|
49
49
|
|
|
50
|
-
- **カバレッジ**: ドメインモデルのAggregate(01-domain-model.md)がデータモデル(
|
|
50
|
+
- **カバレッジ**: ドメインモデルのAggregate(01-domain-model.md)がデータモデル(05-data-model.md)のエンティティとして定義されているか。
|
|
51
51
|
- **用語統一**: テーブル名やカラム名がユビキタス言語と一致しているか。
|
|
52
52
|
|
|
53
53
|
#### 2.3 API仕様 ↔ データモデル
|
|
54
54
|
|
|
55
|
-
- **リソース**: APIリソース(
|
|
55
|
+
- **リソース**: APIリソース(06-api-spec.md)がデータモデルのエンティティに基づいているか。
|
|
56
56
|
- **フィールド**: APIのレスポンスフィールドがデータモデルに存在するか。
|
|
57
57
|
|
|
58
58
|
#### 2.4 画面設計 ↔ API仕様
|
|
@@ -62,7 +62,7 @@ auto_execution_mode: 1
|
|
|
62
62
|
|
|
63
63
|
#### 2.5 インフラ ↔ アーキテクチャ
|
|
64
64
|
|
|
65
|
-
- **構成**: インフラ構成(
|
|
65
|
+
- **構成**: インフラ構成(08-infrastructure.md)がアーキテクチャ図のコンポーネントを網羅しているか。
|
|
66
66
|
- **非機能要件**: 可用性やセキュリティ要件がインフラ設計に反映されているか。
|
|
67
67
|
|
|
68
68
|
### 3. レビュー結果レポートの作成
|
|
@@ -73,9 +73,11 @@ auto_execution_mode: 1
|
|
|
73
73
|
|
|
74
74
|
```markdown
|
|
75
75
|
# 設計ドキュメント一貫性レビュー結果
|
|
76
|
+
|
|
76
77
|
**実施日**: YYYY-MM-DD
|
|
77
78
|
|
|
78
79
|
## サマリー
|
|
80
|
+
|
|
79
81
|
- ✅ OK: X項目
|
|
80
82
|
- ⚠️ Warning: X項目
|
|
81
83
|
- ❌ Error: X項目
|
|
@@ -83,23 +85,29 @@ auto_execution_mode: 1
|
|
|
83
85
|
## 詳細
|
|
84
86
|
|
|
85
87
|
### 1. テックスタック ↔ アーキテクチャ
|
|
88
|
+
|
|
86
89
|
- ✅ OK: 選定技術はアーキテクチャパターンに適合しています。
|
|
87
90
|
|
|
88
91
|
### 2. データモデル ↔ ドメインモデル
|
|
92
|
+
|
|
89
93
|
- ❌ **Error**: Aggregate「Order」に対応するテーブル定義が見つかりません。
|
|
90
94
|
|
|
91
95
|
### 3. API仕様 ↔ データモデル
|
|
96
|
+
|
|
92
97
|
- ⚠️ **Warning**: APIレスポンスのフィールド `user_rank` がデータモデルにありません。
|
|
93
98
|
|
|
94
99
|
### 4. 画面設計 ↔ API仕様
|
|
100
|
+
|
|
95
101
|
- ❌ **Error**: 「注文履歴画面」に必要な `GET /api/orders/history` が定義されていません。
|
|
96
102
|
|
|
97
103
|
### 5. インフラ ↔ アーキテクチャ
|
|
104
|
+
|
|
98
105
|
- ✅ OK: 冗長化構成はアーキテクチャの可用性要件を満たしています。
|
|
99
106
|
|
|
100
107
|
## 推奨アクション
|
|
101
|
-
|
|
102
|
-
|
|
108
|
+
|
|
109
|
+
1. `DefineDataModel` (a-011) で `orders` テーブルを定義する。
|
|
110
|
+
2. `DefineAPISpec` (a-012) で `GET /api/orders/history` を追加する。
|
|
103
111
|
```
|
|
104
112
|
|
|
105
113
|
### 4. 結果の報告と修正提案
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# 変更履歴
|
|
2
|
+
|
|
3
|
+
このプロジェクトのすべての重要な変更はこのファイルに記録されます。
|
|
4
|
+
|
|
5
|
+
フォーマットは [Keep a Changelog](https://keepachangelog.com/ja/1.0.0/) に基づいており、
|
|
6
|
+
このプロジェクトは [Semantic Versioning](https://semver.org/lang/ja/spec/v2.0.0.html) に準拠しています。
|
|
7
|
+
|
|
8
|
+
## [1.0.7] - 2026-01-27
|
|
9
|
+
|
|
10
|
+
### 追加
|
|
11
|
+
|
|
12
|
+
- **CHANGELOG**: 変更履歴ファイルを追加し、npmパッケージに含めるようにしました。
|
|
13
|
+
|
|
14
|
+
## [1.0.6] - 2026-01-27
|
|
15
|
+
|
|
16
|
+
### 追加
|
|
17
|
+
|
|
18
|
+
- **新ワークフロー**: デザインシステム定義用の `a-010-DefineDesignSystem.md` を追加しました(カラー、タイポグラフィ、スペーシング等)。
|
|
19
|
+
- **新テンプレート**: デザインシステム定義用のテンプレート `04-design-system.md` を追加しました。
|
|
20
|
+
|
|
21
|
+
### 変更
|
|
22
|
+
|
|
23
|
+
- **ワークフロー番号の再編成**: 新しいデザインシステムワークフローに合わせて、既存の設計ワークフローの番号を更新しました:
|
|
24
|
+
- `a-010-DefineDataModel` -> `a-011-DefineDataModel`
|
|
25
|
+
- `a-011-DefineAPISpec` -> `a-012-DefineAPISpec`
|
|
26
|
+
- `a-012-DefineArchitecture` -> `a-013-DefineArchitecture`
|
|
27
|
+
- `a-013-DefineInfrastructure` -> `a-014-DefineInfrastructure`
|
|
28
|
+
- `a-014-ReviewDesign` -> `a-015-ReviewDesign`
|
|
29
|
+
- **テンプレート参照**: 再編成に伴い、すべてのワークフローファイル内のテンプレート参照と前提ドキュメントのパスを更新しました。
|
|
30
|
+
|
|
31
|
+
## [1.0.5] - 2026-01-27
|
|
32
|
+
|
|
33
|
+
### 変更
|
|
34
|
+
|
|
35
|
+
- **メタデータ**: npmでの検索性を向上させるため、`package.json` のキーワードを更新しました(`bdd`, `ddd`, `ai-coding` 等を追加)。
|
|
36
|
+
|
|
37
|
+
## [1.0.4] - 2026-01-27
|
|
38
|
+
|
|
39
|
+
### 変更
|
|
40
|
+
|
|
41
|
+
- **ドキュメント**: README.md をリファクタリングし、より明確でシンプルなセクションタイトルに変更しました。
|
|
42
|
+
- **クリーンアップ**: パッケージを軽量化するため、未使用の `x-` シリーズワークフロー(`x-Dependencies-Update` 等)を削除しました。
|
|
43
|
+
- **パッケージ**: npmパッケージに `README.md` が含まれるように修正しました。
|
package/README.md
CHANGED
|
@@ -100,22 +100,23 @@ Why? ─── What? ─── How?
|
|
|
100
100
|
|
|
101
101
|
> プロジェクトの立ち上げや、大規模な設計変更時に使用
|
|
102
102
|
|
|
103
|
-
| # | コマンド | 名前 | 説明
|
|
104
|
-
| :-: | :------- | :------------------------ |
|
|
105
|
-
| 1 | `/a-001` | **Setup Doc Structure** | ドキュメント構造をセットアップ
|
|
106
|
-
| 2 | `/a-002` | **Initialize Project** | プロジェクトの目的・課題・スコープを定義
|
|
107
|
-
| 3 | `/a-003` | **Create Scenarios** | ユーザーストーリーをBDD(Gherkin)シナリオに変換
|
|
108
|
-
| 4 | `/a-004` | **Define Domain Model** | Event Stormingでドメインモデルを定義
|
|
109
|
-
| 5 | `/a-005` | **Create Domain Diagram** | ドメインモデルを図解(コンテキスト境界・集約)
|
|
110
|
-
| 6 | `/a-006` | **Review Req & Domain** | ⚠️ **要件とドメインモデルの整合性をレビュー**
|
|
111
|
-
| 7 | `/a-007` | **Define Tech Stack** | 技術スタック(言語・FW・DB)を選定
|
|
112
|
-
| 8 | `/a-008` | **Define Repo Structure** | リポジトリのディレクトリ構成を定義
|
|
113
|
-
| 9 | `/a-009` | **Define Screen Design** | 画面遷移・UIコンポーネント・Empty Stateを設計
|
|
114
|
-
| 10 | `/a-010` | **Define
|
|
115
|
-
| 11 | `/a-011` | **Define
|
|
116
|
-
| 12 | `/a-012` | **Define
|
|
117
|
-
| 13 | `/a-013` | **Define
|
|
118
|
-
| 14 | `/a-014` | **
|
|
103
|
+
| # | コマンド | 名前 | 説明 |
|
|
104
|
+
| :-: | :------- | :------------------------ | :------------------------------------------------- |
|
|
105
|
+
| 1 | `/a-001` | **Setup Doc Structure** | ドキュメント構造をセットアップ |
|
|
106
|
+
| 2 | `/a-002` | **Initialize Project** | プロジェクトの目的・課題・スコープを定義 |
|
|
107
|
+
| 3 | `/a-003` | **Create Scenarios** | ユーザーストーリーをBDD(Gherkin)シナリオに変換 |
|
|
108
|
+
| 4 | `/a-004` | **Define Domain Model** | Event Stormingでドメインモデルを定義 |
|
|
109
|
+
| 5 | `/a-005` | **Create Domain Diagram** | ドメインモデルを図解(コンテキスト境界・集約) |
|
|
110
|
+
| 6 | `/a-006` | **Review Req & Domain** | ⚠️ **要件とドメインモデルの整合性をレビュー** |
|
|
111
|
+
| 7 | `/a-007` | **Define Tech Stack** | 技術スタック(言語・FW・DB)を選定 |
|
|
112
|
+
| 8 | `/a-008` | **Define Repo Structure** | リポジトリのディレクトリ構成を定義 |
|
|
113
|
+
| 9 | `/a-009` | **Define Screen Design** | 画面遷移・UIコンポーネント・Empty Stateを設計 |
|
|
114
|
+
| 10 | `/a-010` | **Define Design System** | デザインシステム(カラー、タイポグラフィ等)を定義 |
|
|
115
|
+
| 11 | `/a-011` | **Define Data Model** | データベーススキーマ・ER図を設計 |
|
|
116
|
+
| 12 | `/a-012` | **Define API Spec** | APIエンドポイント・リクエスト/レスポンスを定義 |
|
|
117
|
+
| 13 | `/a-013` | **Define Architecture** | アーキテクチャ決定記録(ADR)を作成 |
|
|
118
|
+
| 14 | `/a-014` | **Define Infrastructure** | インフラ構成・非機能要件(RPO/RTO)を定義 |
|
|
119
|
+
| 15 | `/a-015` | **Review Design** | ⚠️ **全体設計の一貫性をレビュー** |
|
|
119
120
|
|
|
120
121
|
> ⚠️ マークのワークフローは**必ず実施**してください。
|
|
121
122
|
|
package/package.json
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "yodogawa",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "CLI to install Yodogawa Slash Commands workflows",
|
|
5
5
|
"bin": {
|
|
6
6
|
"yodogawa": "./bin/cli.js"
|
|
7
7
|
},
|
|
8
8
|
"files": [
|
|
9
9
|
"bin",
|
|
10
|
-
".windsurf"
|
|
10
|
+
".windsurf",
|
|
11
|
+
"README.md",
|
|
12
|
+
"CHANGELOG.md"
|
|
11
13
|
],
|
|
12
14
|
"scripts": {
|
|
13
15
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/.windsurf/templates/project/04-design/{07-infrastructure.md → 08-infrastructure.md}
RENAMED
|
File without changes
|