create-specment 0.4.0 → 0.5.0

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 (31) hide show
  1. package/README.md +161 -116
  2. package/package.json +6 -6
  3. package/templates/docs/01-overview/as-is.mdx +2 -2
  4. package/templates/docs/01-overview/glossary.mdx +2 -2
  5. package/templates/docs/01-overview/odsc.mdx +2 -2
  6. package/templates/docs/01-overview/swot-analysis.mdx +13 -13
  7. package/templates/docs/01-overview/to-be.mdx +2 -2
  8. package/templates/docs/02-requirements/functional/_category_.yaml +5 -0
  9. package/templates/docs/02-requirements/functional/_req-template.mdx +7 -7
  10. package/templates/docs/02-requirements/functional/req-001.mdx +3 -2
  11. package/templates/docs/02-requirements/non-functional/_category_.yaml +5 -0
  12. package/templates/docs/02-requirements/non-functional/_nfr-template.mdx +6 -6
  13. package/templates/docs/03-external/business-model.mdx +1 -1
  14. package/templates/docs/03-external/index.mdx +1 -1
  15. package/templates/docs/04-internal/batches/import-products.mdx +1 -1
  16. package/templates/docs/04-internal/policies/claude.mdx +91 -0
  17. package/templates/docs/04-internal/policies/github.mdx +6 -8
  18. package/templates/docs/04-internal/rules/database.mdx +1 -1
  19. package/templates/docs/04-internal/screens/common.mdx +15 -0
  20. package/templates/docs/04-internal/screens/dashboard.mdx +2 -2
  21. package/templates/docs/04-internal/screens/index.mdx +1 -1
  22. package/templates/docs/04-internal/screens/login.mdx +2 -2
  23. package/templates/docs/04-internal/screens/menu.mdx +2 -2
  24. package/templates/docs/index.tsx +61 -0
  25. package/templates/docs/introduction/document-editing/how-to.mdx +2 -2
  26. package/templates/docs/introduction/index.mdx +1 -1
  27. package/templates/docs/introduction/operational-policies/sharepoint.mdx +1 -1
  28. package/templates/package.json.template +12 -10
  29. package/templates/docs/02-requirements/functional/_category_.json +0 -8
  30. package/templates/docs/02-requirements/non-functional/_category_.json +0 -8
  31. /package/templates/docs/introduction/document-editing/{_category_.yml → _category_.yaml} +0 -0
package/README.md CHANGED
@@ -1,15 +1,15 @@
1
1
  # create-specment
2
2
 
3
- [![NPM Package](.github/images/icons/npm-badge.svg)](https://www.npmjs.com/package/@plenarc/create-specment)
4
- [![MIT License](.github/images/icons/license-badge.svg)](LICENSE)
3
+ [![npm version][npm-image]][npm-url]
4
+ [![npm downlads][npm-downloads-image]][npm-url]
5
+ [![License][license-image]][license-url]
5
6
 
6
7
  [English](README.md) | [日本語](README-jp.md)
7
8
 
8
9
  Demo: https://plenarc.github.io/specment/
9
10
 
10
11
  1. 'specification' + 'document' => Specment
11
- 1. A site generation tool specializing in creating specification documents based on Docusaurus.
12
-
12
+ 1. A site generation tool specializing in creating specification documents based on Docusaurus
13
13
 
14
14
  <div align="center">
15
15
  <table>
@@ -40,7 +40,7 @@ Demo: https://plenarc.github.io/specment/
40
40
  ## Features
41
41
 
42
42
  1. 🚀 **Interactive Setup**: Generate projects by simply answering questions
43
- 1. 📋 **4 Specialized Templates**: Choose optimal templates based on your use case
43
+ 1. 📋 **5 Specialized Templates**: Choose optimal templates based on your use case
44
44
  1. 🔧 **Feature Selection**: Select PlantUML, Redoc, search, multilingual support, and more
45
45
  1. 📝 **Variable Substitution**: Automatically replace project names and author information
46
46
  1. 🎨 **Docusaurus Compatible**: Fully compatible with the existing Docusaurus ecosystem
@@ -61,15 +61,22 @@ The following software must be installed:
61
61
  ```
62
62
 
63
63
  1. **mise (development environment management tool)**
64
-
65
- ```bash
66
- # Install mise (Linux/macOS/WSL)
67
- curl https://mise.run | sh
68
-
69
- # Update shell configuration
70
- echo 'eval "$(mise activate bash)"' >> ~/.bashrc
71
- source ~/.bashrc
72
- ```
64
+ 1. Linux/macOS/WSL
65
+ ```bash
66
+ curl https://mise.run | sh
67
+
68
+ # Update shell configuration
69
+ echo 'eval "$(mise activate bash)"' >> ~/.bashrc
70
+ source ~/.bashrc
71
+ ```
72
+ 1. brew
73
+ ```bash
74
+ brew install mise
75
+ ```
76
+ 1. Version check
77
+ ```bash
78
+ mise --version
79
+ ```
73
80
 
74
81
  1. **Node.js (LTS or higher recommended, installation via mise recommended)**
75
82
 
@@ -94,143 +101,197 @@ The following software must be installed:
94
101
 
95
102
  ### Installation Methods
96
103
 
104
+ 1. For details on each option, see [Option Details](#option-details)
105
+
97
106
  #### Method 1: Using ni (Recommended)
98
107
 
99
108
  ```bash
100
- # Create project using ni
101
- nlx create-specment@latest my-docs
102
- cd my-docs
109
+ # Create project using ni (interactive setup will start)
110
+ nlx create-specment@latest
111
+ ```
103
112
 
104
- # Install dependencies using ni
105
- ni
113
+ After execution, the following options will be displayed, so select the necessary documents and features:
106
114
 
107
- # Start development server using ni
108
- nr start
115
+ ```bash
116
+ ◆ Please select display language / 表示言語を選択してください:
117
+ │ ● English
118
+ │ ○ 日本語
119
+
120
+
121
+ ┌ 🚀 Welcome to create-specment!
122
+ Creating a new Docusaurus-based specification documentation project...
123
+
124
+ ◆ Enter folder name (project name):
125
+ │ _
126
+
127
+
128
+ ◆ Which templates would you like to use? (Multiple selection)
129
+ │ ◻ Project Analysis
130
+ │ ◻ Requirements Specification
131
+ │ ◻ External Design
132
+ │ ◻ Internal Design
133
+ │ ◻ API (Using Redocusaurus)
134
+
135
+
136
+ ◆ Which additional features would you like to include?
137
+ │ ◻ PlantUML
138
+ │ ◻ Mermaid
139
+
109
140
  ```
110
141
 
111
- #### Method 2: Using npx
142
+ Once creation is complete, change to the folder and start in development mode after installation:
112
143
 
113
144
  ```bash
114
- # Create project using the latest version
115
- npx create-specment@latest my-docs
116
-
117
- # Specify a specific template
118
- npx create-specment@latest my-docs --template api-spec
145
+ cd <folder-name> && ni && nr start
119
146
  ```
120
147
 
121
- #### Method 3: Global Installation
148
+ #### Method 2: Using npx
122
149
 
123
150
  ```bash
124
- # Install globally
125
- npm install -g create-specment
126
-
127
- # Create project
128
- create-specment my-docs
151
+ # Start setup
152
+ npx create-specment@latest
129
153
  ```
130
154
 
131
- ### Basic Usage
155
+ 1. For option details, see Method 1
132
156
 
133
- 1. **Create Project**
157
+ ## Interactive Setup
134
158
 
135
- ```bash
136
- nlx create-specment@latest my-docs
137
- cd my-docs
138
- ```
159
+ When you run `create-specment`, the following options will be displayed sequentially:
139
160
 
140
- 1. **Interactive Setup**
161
+ ### 1. Display Language Selection
141
162
 
142
- Configure your project by answering the following questions:
163
+ ```
164
+ ◆ Please select display language / 表示言語を選択してください:
165
+ │ ● English
166
+ │ ○ 日本語
167
+ ```
143
168
 
144
- 1. **Language Selection**: Choose display language (English/Japanese)
145
- 1. **Project Name**: Name of your documentation site
146
- 1. **Template Selection**: Choose templates based on your use case (multiple selection)
147
- 1. **Feature Selection**: Select the features you need
169
+ 1. Select the display language for the interface
170
+ 1. Subsequent questions will be displayed in the selected language
148
171
 
149
- 1. **Start Development Server**
172
+ ### 2. Project Name Input
150
173
 
151
- ```bash
152
- # Install dependencies (if not automatically executed)
153
- ni
174
+ ```
175
+ Enter folder name (project name):
176
+ │ _
177
+ ```
154
178
 
155
- # Start development server
156
- nr start
157
- ```
179
+ 1. Enter the folder name for the project to be created
180
+ 1. This name will become the project directory name
158
181
 
159
- 1. **Build and Deploy**
182
+ ### 3. Template Selection (Multiple selection possible)
160
183
 
161
- ```bash
162
- # Production build
163
- nr build
184
+ ```
185
+ Which templates would you like to use? (Multiple selection)
186
+ ◻ Project Analysis (Provides structure for understanding project overview)
187
+ │ ◻ Requirements Specification
188
+ │ ◻ External Design
189
+ │ ◻ Internal Design
190
+ │ ◻ API (Using Redocusaurus)
191
+ ```
164
192
 
165
- # Local preview
166
- nr serve
167
- ```
193
+ 1. Multiple templates can be selected simultaneously
194
+ 1. Each template is generated as an independent section
195
+ 1. At least one template must be selected
168
196
 
169
- ## Template List
197
+ #### Project Analysis
170
198
 
171
- ### 1. Classic Specification (classic-spec)
172
- General-purpose specification template. Provides basic document structure.
199
+ Project overview and analysis template. Provides structure for understanding the overall picture of the project.
173
200
 
174
201
  **Use Cases**:
175
- 1. General technical specifications
176
- 1. Product specifications
177
- 1. Basic documentation creation
202
+ 1. Project proposals
203
+ 1. Current state analysis reports
204
+ 1. SWOT analysis documents
178
205
 
179
- ### 2. API Specification (api-spec)
180
- API specification template. Specialized for API documentation and OpenAPI specifications.
206
+ #### Requirements Specification
207
+ Requirements specification template. Allows systematic organization of functional and non-functional requirements.
181
208
 
182
209
  **Use Cases**:
183
- 1. REST API documentation
184
- 1. OpenAPI specifications
185
- 1. API reference guides
210
+ 1. System requirements specifications
211
+ 1. Functional specifications
212
+ 1. EARS format requirement descriptions
213
+
214
+ #### External Design
186
215
 
187
- ### 3. Technical Specification (technical-spec)
188
- Technical specification template. Focused on detailed technical documentation and system design.
216
+ External design specification template. Specialized for interface design with external systems.
189
217
 
190
218
  **Use Cases**:
191
- 1. System requirements documentation
192
- 1. Functional specifications
193
- 1. EARS format requirement descriptions
219
+ 1. System architecture design documents
220
+ 1. API design documents
221
+ 1. UI/UX design documents
222
+
223
+ #### Internal Design
194
224
 
195
- ### 4. Enterprise Specification (enterprise-spec)
196
- Enterprise specification template. Designed for large-scale enterprise documentation with comprehensive structure.
225
+ Internal design specification template. Specialized for detailed internal system design and algorithms.
197
226
 
198
227
  **Use Cases**:
199
- 1. Enterprise system architecture documentation
200
- 1. Comprehensive project documentation
201
- 1. Multi-stakeholder documentation
228
+ 1. Detailed design documents
229
+ 1. Database design documents
230
+ 1. Algorithm specifications
202
231
 
203
- ## Feature Selection
232
+ #### API
204
233
 
205
- ### PlantUML Integration
206
- Easily create UML diagrams and sequence diagrams.
234
+ 1. Using [Redocusaurus](https://github.com/rohit-gohri/redocusaurus), you can display YAML format files written in OpenAPI specifications
207
235
 
208
- ```plantuml
209
- @startuml
210
- Alice -> Bob: Hello
211
- Bob -> Alice: Hi!
212
- @enduml
236
+ ### 4. Additional Feature Selection
237
+
238
+ ```
239
+ Which additional features would you like to include?
240
+ │ ◻ PlantUML (PlantUML diagram integration (UML diagrams and flowcharts))
241
+ │ ◻ Mermaid
213
242
  ```
214
243
 
215
- ### Redoc Integration
216
- Beautifully display OpenAPI specifications.
244
+ 1. **PlantUML**: Adds functionality to create UML diagrams and flowcharts
245
+ 1. **Mermaid**: Adds functionality to create diagrams within Markdown
246
+ 1. Both can be selected
247
+
248
+ #### PlantUML
249
+
250
+ 1. You can use [PlantUML](https://plantuml.com/) for UML diagrams and sequence diagrams
251
+ 1. Uses the Docusaurus theme [create-specment](https://www.npmjs.com/package/create-specment)
252
+ 1. ※ Please refer to the README at the link for usage and precautions
253
+
254
+ #### Mermaid
255
+
256
+ 1. Uses the Docusaurus theme [theme-mermaid](https://docusaurus.io/docs/api/themes/@docusaurus/theme-mermaid)
217
257
 
218
- ### Multilingual Support
219
- Support for creating documentation in multiple languages.
258
+ #### Multilingual Support
259
+
260
+ TBD: Plans to support document creation in multiple languages (if requested)
220
261
 
221
262
  ## Command Line Options
222
263
 
223
264
  ```bash
224
265
  create-specment [project-name] [options]
225
266
 
267
+ Arguments:
268
+ project-name Folder name for the project to be created (optional)
269
+ When specified: Skip folder name input
270
+
226
271
  Options:
227
- --template <template> Template to use (classic-spec|api-spec|technical-spec|enterprise-spec)
272
+ -t, --template <template> Template to use (project-analysis|requirements|external-design|internal-design|api-spec)
228
273
  --skip-install Skip dependency installation
229
274
  --verbose Show detailed logs
230
275
  -h, --help Show help
231
276
  -V, --version Show version
232
277
  ```
233
278
 
279
+ ### Usage Examples
280
+
281
+ ```bash
282
+ # Complete interactive setup (all options will be displayed)
283
+ create-specment
284
+
285
+ # Specify folder name and interactive setup (skip folder name input)
286
+ create-specment my-docs
287
+
288
+ # Completely non-interactive (skip folder name and template selection)
289
+ create-specment my-docs --template requirements
290
+
291
+ # Specify template only (folder name input will be displayed)
292
+ create-specment --template api-spec
293
+ ```
294
+
234
295
  ## Troubleshooting
235
296
 
236
297
  ### Common Issues
@@ -293,28 +354,6 @@ nr start -- --port 3001
293
354
  1. The combination of mise + ni minimizes environment differences
294
355
  1. Running as a Linux environment within WSL provides an experience equivalent to macOS/Linux
295
356
 
296
- ## Development Environment Setup
297
-
298
- To participate in project development:
299
-
300
- ```bash
301
- # Clone repository
302
- git clone https://github.com/plenarc/create-specment.git
303
- cd create-specment
304
-
305
- # Install dependencies
306
- ni
307
-
308
- # Run in development mode
309
- nr dev
310
-
311
- # Run tests
312
- nr test
313
-
314
- # Build
315
- nr build
316
- ```
317
-
318
357
  ## License
319
358
 
320
359
  MIT License - See the [LICENSE](LICENSE) file for details.
@@ -329,10 +368,16 @@ We welcome contributions to the project! See [CONTRIBUTING.md](CONTRIBUTING.md)
329
368
  1. 💡 **Feature Requests**: [GitHub Discussions](https://github.com/plenarc/create-specment/discussions)
330
369
  1. 📖 **Documentation**: [Official Documentation](https://create-specment.dev)
331
370
 
332
- ## Related Projects
371
+ ## Related projects
333
372
 
334
373
  1. [Docusaurus](https://docusaurus.io/) - Static site generator
335
374
  1. [mise](https://mise.jdx.dev/) - Development environment management tool
336
375
  1. [ni](https://github.com/antfu/ni) - Package manager unification tool
337
376
  1. [PlantUML](https://plantuml.com/) - UML diagram creation tool
338
377
  1. [Redoc](https://redocly.github.io/redoc/) - OpenAPI specification display tool
378
+
379
+ [npm-image]: https://img.shields.io/npm/v/create-specment.svg
380
+ [npm-url]: https://www.npmjs.com/package/create-specment
381
+ [npm-downloads-image]: https://img.shields.io/npm/dw/create-specment.svg
382
+ [license-image]: https://img.shields.io/github/license/plenarc/create-specment.svg
383
+ [license-url]: https://github.com/plenarc/create-specment/blob/main/LICENSE
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-specment",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "Interactive CLI tool for creating Docusaurus-based specification documentation projects",
5
5
  "type": "module",
6
6
  "author": "Plenarc",
@@ -41,13 +41,13 @@
41
41
  "dependencies": {
42
42
  "@clack/prompts": "^0.11.0",
43
43
  "chalk": "^5.6.2",
44
- "commander": "^14.0.2"
44
+ "commander": "^14.0.3"
45
45
  },
46
46
  "devDependencies": {
47
- "@biomejs/biome": "^2.3.10",
48
- "@types/node": "^25.0.3",
49
- "typescript": "^5.9.3",
50
- "vitest": "^4.0.16"
47
+ "@biomejs/biome": "^2.4.16",
48
+ "@types/node": "^25.5.2",
49
+ "typescript": "~6.0.3",
50
+ "vitest": "^4.1.8"
51
51
  },
52
52
  "engines": {
53
53
  "node": ">=22.0.0"
@@ -7,11 +7,11 @@ import { TBD } from '@site/src/components/TBD';
7
7
 
8
8
  # As-Is - 現状分析
9
9
 
10
- <!--
10
+ {/*
11
11
  TBDの使い方
12
12
  <TBD/> コンポーネントは未確定項目を可視化するための占位マークです
13
13
  執筆完了後はimport文といっしょにこのコメントも必ず削除すること
14
- -->
14
+ */}
15
15
 
16
16
  ## 概要 {#current-overview}
17
17
  1. 本章の目的と読み手が得られるアウトプットを記述
@@ -7,11 +7,11 @@ import { TBD } from '@site/src/components/TBD';
7
7
 
8
8
  # Glossary - 用語集
9
9
 
10
- <!--
10
+ {/*
11
11
  TBDの使い方
12
12
  <TBD/> コンポーネントは未確定項目を可視化するための占位マークです
13
13
  執筆完了後はimport文といっしょにこのコメントも必ず削除すること
14
- -->
14
+ */}
15
15
 
16
16
  ## 使い方ガイド {#how-to-use}
17
17
  1. 用語は **アルファベット順 → かな順 → その他** の順番で並べる
@@ -7,11 +7,11 @@ import { TBD } from '@site/src/components/TBD';
7
7
 
8
8
  # ODSC
9
9
 
10
- <!--
10
+ {/*
11
11
  TBDの使い方
12
12
  <TBD/> コンポーネントは未確定項目を可視化するための占位マークです
13
13
  執筆完了後はimport文といっしょにこのコメントも必ず削除すること
14
- -->
14
+ */}
15
15
 
16
16
  ## ODSCとは? {#what-is-odsc}
17
17
  1. 目的(O)、成果物(D)、成功基準(SC)のこと
@@ -39,7 +39,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
39
39
  ## SWOT分析結果
40
40
 
41
41
  ### Strengths (強み)
42
- <!-- 内部環境のプラス要因 -->
42
+ {/* 内部環境のプラス要因 */}
43
43
 
44
44
  1. **技術力**
45
45
  1. 高度な技術スキルを持つエンジニアチーム
@@ -55,7 +55,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
55
55
  1. 豊富なドメイン知識
56
56
 
57
57
  ### Weaknesses (弱み)
58
- <!-- 内部環境のマイナス要因 -->
58
+ {/* 内部環境のマイナス要因 */}
59
59
 
60
60
  1. **技術面**
61
61
  1. 特定技術領域での経験不足
@@ -71,7 +71,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
71
71
  1. 変更管理の仕組み不足
72
72
 
73
73
  ### Opportunities (機会)
74
- <!-- 外部環境のプラス要因 -->
74
+ {/* 外部環境のプラス要因 */}
75
75
 
76
76
  1. **市場環境**
77
77
  1. デジタル化需要の拡大
@@ -87,7 +87,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
87
87
  1. 業界ガイドラインの整備
88
88
 
89
89
  ### Threats (脅威)
90
- <!-- 外部環境のマイナス要因 -->
90
+ {/* 外部環境のマイナス要因 */}
91
91
 
92
92
  1. **競合環境**
93
93
  1. 競合他社の技術力向上
@@ -105,7 +105,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
105
105
  ## 戦略マトリックス
106
106
 
107
107
  ### SO戦略 (強み × 機会)
108
- <!-- 強みを活かして機会を捉える戦略 -->
108
+ {/* 強みを活かして機会を捉える戦略 */}
109
109
 
110
110
  1. **技術力を活かした新サービス展開**
111
111
  1. 高度な技術力を活用してデジタル化需要に対応
@@ -115,7 +115,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
115
115
  1. パートナー企業との連携強化
116
116
 
117
117
  ### WO戦略 (弱み × 機会)
118
- <!-- 弱みを改善して機会を捉える戦略 -->
118
+ {/* 弱みを改善して機会を捉える戦略 */}
119
119
 
120
120
  1. **スキル強化による競争力向上**
121
121
  1. 新技術研修の実施
@@ -125,7 +125,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
125
125
  1. ドキュメント化の推進
126
126
 
127
127
  ### ST戦略 (強み × 脅威)
128
- <!-- 強みを活かして脅威を回避する戦略 -->
128
+ {/* 強みを活かして脅威を回避する戦略 */}
129
129
 
130
130
  1. **技術力による差別化**
131
131
  1. 競合他社との技術的差別化
@@ -135,7 +135,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
135
135
  1. 顧客との長期的関係構築
136
136
 
137
137
  ### WT戦略 (弱み × 脅威)
138
- <!-- 弱みと脅威を最小化する戦略 -->
138
+ {/* 弱みと脅威を最小化する戦略 */}
139
139
 
140
140
  1. **リスク軽減策の実施**
141
141
  1. 技術リスクの早期発見・対応
@@ -147,7 +147,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
147
147
  ## アクションプラン
148
148
 
149
149
  ### 短期施策 (3ヶ月以内)
150
- <!-- 短期的に実施すべき施策 -->
150
+ {/* 短期的に実施すべき施策 */}
151
151
 
152
152
  1. **技術スキル強化**
153
153
  1. 新技術研修の計画・実施
@@ -157,7 +157,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
157
157
  1. ドキュメントテンプレートの整備
158
158
 
159
159
  ### 中期施策 (6ヶ月以内)
160
- <!-- 中期的に実施すべき施策 -->
160
+ {/* 中期的に実施すべき施策 */}
161
161
 
162
162
  1. **組織体制強化**
163
163
  1. 専門チームの設立
@@ -167,7 +167,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
167
167
  1. 新規パートナーの開拓
168
168
 
169
169
  ### 長期施策 (1年以内)
170
- <!-- 長期的に実施すべき施策 -->
170
+ {/* 長期的に実施すべき施策 */}
171
171
 
172
172
  1. **戦略的投資**
173
173
  1. 新技術への投資
@@ -179,7 +179,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
179
179
  ## 評価・見直し
180
180
 
181
181
  ### 評価指標
182
- <!-- SWOT分析結果の評価指標 -->
182
+ {/* SWOT分析結果の評価指標 */}
183
183
 
184
184
  1. **技術力指標**
185
185
  1. 新技術習得率
@@ -192,7 +192,7 @@ SWOT分析は、内部環境と外部環境をプラス要因とマイナス要
192
192
  1. 顧客満足度
193
193
 
194
194
  ### 見直しサイクル
195
- <!-- SWOT分析の見直し頻度とタイミング -->
195
+ {/* SWOT分析の見直し頻度とタイミング */}
196
196
 
197
197
  1. **四半期レビュー**: 戦略の進捗確認
198
198
  1. **半期レビュー**: SWOT要素の再評価
@@ -7,11 +7,11 @@ import { TBD } from '@site/src/components/TBD';
7
7
 
8
8
  # To‑Be - 目指すべき姿
9
9
 
10
- <!--
10
+ {/*
11
11
  TBDの使い方
12
12
  <TBD/> コンポーネントは未確定項目を可視化するための占位マークです
13
13
  執筆完了後はimport文といっしょにこのコメントも必ず削除すること
14
- -->
14
+ */}
15
15
 
16
16
  ## 概要 {#target-overview}
17
17
  1. 本章で示す「理想状態」と As‑Is との差分を概観する
@@ -0,0 +1,5 @@
1
+ label: '要件定義一覧'
2
+ position: 2
3
+ link:
4
+ type: 'generated-index'
5
+ description: 'こんなことやあんなこと'
@@ -10,32 +10,32 @@ draft: true
10
10
  ---
11
11
  import { PriorityMatrix } from '@site/src/components/PriorityMatrix';
12
12
 
13
- <!-- <div style={{ marginBottom: "1rem" }}>
13
+ {/* <div style={{ marginBottom: "1rem" }}>
14
14
  {frontMatter.tags.map((tag) => (
15
15
  <Tag key={tag} name={tag} />
16
16
  ))}
17
- </div> -->
17
+ </div> */}
18
18
 
19
19
  ## 概要
20
- <!-- 1-2文で要求の概要を記述 -->
20
+ {/* 1-2文で要求の概要を記述 */}
21
21
 
22
22
  ## 詳細要件
23
- <!-- 箇条書きで具体的な要件を記述 -->
23
+ {/* 箇条書きで具体的な要件を記述 */}
24
24
  - 要件1
25
25
  - 要件2
26
26
  - 要件3
27
27
 
28
28
  ## 受け入れ基準
29
- <!-- この要求が満たされたと判断できる基準を記述 -->
29
+ {/* この要求が満たされたと判断できる基準を記述 */}
30
30
  - [ ] 基準1
31
31
  - [ ] 基準2
32
32
 
33
33
  ## 関連する非機能要件
34
- <!-- 関連するNFRへのリンク -->
34
+ {/* 関連するNFRへのリンク */}
35
35
  - [NFR-001:パフォーマンス要件](../non-functional/nfr-001.mdx)
36
36
 
37
37
  ## 参考情報
38
- <!-- 追加の情報、図表、リンクなど -->
38
+ {/* 追加の情報、図表、リンクなど */}
39
39
 
40
40
  export const changes = [
41
41
  {
@@ -8,14 +8,15 @@ urgency: 7
8
8
  importance: 8
9
9
  ---
10
10
  import { PriorityMatrix } from '@site/src/components/PriorityMatrix';
11
+ // import { ChangeHistoryComponent } from '@site/src/components/ChangeHistory';
11
12
 
12
13
  <PriorityMatrix urgency={frontMatter.urgency} importance={frontMatter.importance} />
13
14
 
14
- <!-- <div style={{ marginBottom: "1rem" }}>
15
+ {/* <div style={{ marginBottom: "1rem" }}>
15
16
  {frontMatter.tags.map((tag) => (
16
17
  <Tag key={tag} name={tag} />
17
18
  ))}
18
- </div> -->
19
+ </div> */}
19
20
 
20
21
  ## 概要
21
22
  システムへのアクセスを制御するためのユーザー認証機能を提供する。
@@ -0,0 +1,5 @@
1
+ label: '非機能要件一覧'
2
+ position: 3
3
+ link:
4
+ type: 'generated-index'
5
+ description: '非機能のあれやこれ'
@@ -13,23 +13,23 @@ import { ChangeHistoryComponent } from '@site/src/components/ChangeHistory';
13
13
  <PriorityMatrix urgency={frontMatter.urgency} importance={frontMatter.importance} />
14
14
 
15
15
  ## 概要
16
- <!-- 非機能要件の概要を記述 -->
16
+ {/* 非機能要件の概要を記述 */}
17
17
 
18
18
  ## 詳細要件
19
19
  ### カテゴリ1
20
- <!-- 要件の詳細を記述 -->
20
+ {/* 要件の詳細を記述 */}
21
21
 
22
22
  ### カテゴリ2
23
- <!-- 要件の詳細を記述 -->
23
+ {/* 要件の詳細を記述 */}
24
24
 
25
25
  ## 測定方法
26
- <!-- 要件の達成を測定する方法を記述 -->
26
+ {/* 要件の達成を測定する方法を記述 */}
27
27
 
28
28
  ## 制約条件
29
- <!-- 制約条件があれば記述 -->
29
+ {/* 制約条件があれば記述 */}
30
30
 
31
31
  ## 関連する機能要件
32
- <!-- 関連する機能要件へのリンク -->
32
+ {/* 関連する機能要件へのリンク */}
33
33
 
34
34
  export const changes = [
35
35
  {
@@ -11,4 +11,4 @@ import BusinessModel from '@site/static/img/business-model.drawio.svg';
11
11
  1. 参考
12
12
  1. https://drawio-app.com/blog/business-model-canvas/
13
13
  1. note: 『ビジネスの仕組みがわかる 図解のつくりかた』全文公開
14
- 1. https://note.com/bizgram/n/n3dbed12f95ea
14
+ 1. https://note.com/bizgram/n/n3dbed12f95ea
@@ -2,7 +2,7 @@
2
2
  id: index
3
3
  sidebar_position: 1
4
4
  ---
5
- import TBD from '@site/src/components/TBD';
5
+ import { TBD } from '@site/src/components/TBD';
6
6
 
7
7
  # 外部設計
8
8
 
@@ -4,7 +4,7 @@ tags:
4
4
  - batch
5
5
  - product
6
6
  ---
7
- import TBD from '@site/src/components/TBD';
7
+ import { TBD } from '@site/src/components/TBD';
8
8
 
9
9
  # import-products - 商品取込
10
10
  ## 概要 {#overview}
@@ -0,0 +1,91 @@
1
+ ---
2
+ sidebar_position: 4
3
+ tags:
4
+ - claude
5
+ - ai
6
+ ---
7
+
8
+ # Claudeの使い方
9
+
10
+ このプロジェクトでは[Claude Code](https://claude.ai/code)を使ってドキュメント作成を効率化しています。
11
+
12
+ ## スラッシュコマンド
13
+
14
+ ドキュメントの新規作成はスラッシュコマンドで行います。
15
+ ファイル作成と `index.mdx` への登録を自動で行います。
16
+
17
+ ### /new-table
18
+
19
+ テーブル定義ドキュメントを新規作成します。
20
+
21
+ ```
22
+ /new-table <physical_name> <logical_name> <schema> <description>
23
+ ```
24
+
25
+ 1. 作成先: `docs/04-internal/tables/{physical_name}.mdx`
26
+ 1. index登録: `docs/04-internal/tables/index.mdx`
27
+
28
+
29
+
30
+ ```
31
+ /new-table orders 注文 public 注文情報を管理するテーブル
32
+ ```
33
+
34
+ ### /new-screen
35
+
36
+ 画面定義ドキュメントを新規作成します。
37
+
38
+ ```
39
+ /new-screen <physical_name> <logical_name>
40
+ ```
41
+
42
+ 1. 作成先: `docs/04-internal/screens/{physical_name}.mdx`
43
+ 1. index登録: `docs/04-internal/screens/index.mdx`
44
+
45
+
46
+
47
+ ```
48
+ /new-screen order-list 注文一覧
49
+ ```
50
+
51
+ ### /new-batch
52
+
53
+ バッチ定義ドキュメントを新規作成します。
54
+
55
+ ```
56
+ /new-batch <id> <logical_name>
57
+ ```
58
+
59
+ 1. 作成先: `docs/04-internal/batches/{id}.mdx`
60
+ 1. index登録: `docs/04-internal/batches/index.mdx`
61
+
62
+
63
+
64
+ ```
65
+ /new-batch import-orders 注文取込
66
+ ```
67
+
68
+ ## Claudeが参照するルール
69
+
70
+ Claudeは `.claude/rules/` 配下のファイルを参照してドキュメントを作成します。
71
+ 各ルールの詳細は以下のドキュメントが権威ある情報源です。
72
+
73
+ | ルールファイル | 参照先 |
74
+ | -------------- | ------ |
75
+ | `.claude/rules/markdown.md` | [Markdown](../rules/markdown.mdx) ※ルートのrulesを参照 |
76
+ | `.claude/rules/git.md` | [ブランチ命名規約](./branch-naming-rules.mdx)、[PR運用フロー](./pull-request-operation-flow.mdx) |
77
+ | `.claude/rules/database.md` | [データベース](../rules/database.mdx) |
78
+ | `.claude/rules/document-creation.md` | [ドキュメント作成ルール](../rules/document-creation-rules.mdx) |
79
+ | `.claude/rules/review.md` | [レビュープロセス](../rules/review-process.mdx) |
80
+
81
+ ## Claudeの操作範囲
82
+
83
+ Claudeが自律的に行ってよい操作と禁止操作を明確にしています。
84
+
85
+ | 操作 | 可否 |
86
+ | ---- | :--: |
87
+ | ファイルの作成・編集・削除 | :o: |
88
+ | `git add`(ステージング) | :o: |
89
+ | `git fetch`、`git checkout` | :o: |
90
+ | `git commit` | :x: |
91
+ | `git push` | :x: |
@@ -4,23 +4,21 @@ tags:
4
4
  - git
5
5
  - github
6
6
  ---
7
- import TBD from '@site/src/components/TBD';
7
+ import { TBD } from '@site/src/components/TBD';
8
8
 
9
9
  # GitHubの利用方法
10
10
 
11
11
  ## 基本的なGitHubの利用ルール
12
12
 
13
13
  ### コミットメッセージのルール
14
- 1. 簡潔で分かりやすいコミットメッセージを書く
15
- 1. プレフィックスを使用する(例:`feat:`、`fix:`、`docs:`、`style:`、`refactor:`、`test:`、`chore:`)
16
- 1. 現在形の動詞で始める(例:「Add」「Fix」「Update」など)
14
+ 1. 日本語で記述する
15
+ 1. 英語プレフィックス(`feat:`、`fix:`、`chore:` など)は使用しない
16
+ 1. 日本語の動詞で始める(「追加」「修正」「更新」「削除」「変更」)
17
17
  1. 50文字以内に収める
18
18
 
19
19
  ### ブランチ戦略
20
- 1. `main`/`master`ブランチは常に安定した状態を保つ
21
- 1. 機能開発は`feature/機能名`ブランチで行う
22
- 1. バグ修正は`fix/バグ内容`ブランチで行う
23
- 1. リリース準備は`release/バージョン番号`ブランチで行う
20
+ 1. ブランチ命名規則の詳細は[ブランチ命名規約](./branch-naming-rules.mdx)を参照
21
+ 1. `main` ブランチは常に安定した状態を保つ
24
22
 
25
23
  ### プルリクエスト(PR)のルール
26
24
  1. 明確なタイトルと説明を書く
@@ -3,7 +3,7 @@ sidebar_position: 5
3
3
  tags:
4
4
  - Database
5
5
  ---
6
- import TBD from '@site/src/components/TBD';
6
+ import { TBD } from '@site/src/components/TBD';
7
7
 
8
8
  # データベース
9
9
 
@@ -0,0 +1,15 @@
1
+ ---
2
+ sidebar_position: 5
3
+ ---
4
+ import { TBD } from '@site/src/components/TBD';
5
+
6
+ # 画面共通事項
7
+
8
+ ## エラー表示ポリシー {#error-display-policy}
9
+ 1. <TBD/>
10
+
11
+ ## ローディング表示 {#loading}
12
+ 1. <TBD/>
13
+
14
+ ## 共通UIパターン {#common-ui-patterns}
15
+ 1. <TBD/>
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  sidebar_position: 4
3
3
  ---
4
- import TBD from '@site/src/components/TBD';
4
+ import { TBD } from '@site/src/components/TBD';
5
5
 
6
6
  # ダッシュボード
7
7
  ## ファイル
8
- <!-- 1. frontend/src/routes/[dashboard.svelte](../../../../frontend/src/routes/dashboard.svelte) -->
8
+ {/* 1. frontend/src/routes/[dashboard.svelte](../../../../frontend/src/routes/dashboard.svelte) */}
9
9
 
10
10
  ## 概要
11
11
  1. <TBD/>
@@ -3,7 +3,7 @@ id: index
3
3
  sidebar_position: 1
4
4
  hide_table_of_contents: true
5
5
  ---
6
- import TBD from '@site/src/components/TBD';
6
+ import { TBD } from '@site/src/components/TBD';
7
7
 
8
8
  # 画面定義
9
9
  ## 画面一覧
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  sidebar_position: 2
3
3
  ---
4
- import TBD from '@site/src/components/TBD';
4
+ import { TBD } from '@site/src/components/TBD';
5
5
 
6
6
  # ログイン
7
7
  ## ファイル
8
- <!-- 1. frontend/src/routes/[login.svelte](../../../../frontend/src/routes/login.svelte) -->
8
+ {/* 1. frontend/src/routes/[login.svelte](../../../../frontend/src/routes/login.svelte) */}
9
9
 
10
10
  ## 概要
11
11
  1. ログイン画面
@@ -1,11 +1,11 @@
1
1
  ---
2
2
  sidebar_position: 3
3
3
  ---
4
- import TBD from '@site/src/components/TBD';
4
+ import { TBD } from '@site/src/components/TBD';
5
5
 
6
6
  # メニュー
7
7
  ## ファイル
8
- <!-- 1. frontend/src/routes/[menu.svelte](../../../../frontend/src/routes/menu.svelte) -->
8
+ {/* 1. frontend/src/routes/[menu.svelte](../../../../frontend/src/routes/menu.svelte) */}
9
9
 
10
10
  ## 概要
11
11
  1. メニュー画面
@@ -1,3 +1,4 @@
1
+ import Link from '@docusaurus/Link';
1
2
  import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
2
3
  import Heading from '@theme/Heading';
3
4
  import Layout from '@theme/Layout';
@@ -29,7 +30,67 @@ function DocumentSection() {
29
30
  <p>
30
31
  このサイトは{siteConfig.title}
31
32
  の設計、仕様を管理するためのドキュメントサイトです。
33
+ <br />
34
+ システムの要件定義から詳細設計まで、プロジェクトに関する技術文書を体系的に管理しています。
32
35
  </p>
36
+
37
+ <div className="row">
38
+ <div className="col col--4">
39
+ <div className={styles.featureCard}>
40
+ <Heading as="h3">ドキュメント構成</Heading>
41
+ <ul>
42
+ <li>
43
+ <Link to="/docs/overview">プロジェクト概要・分析</Link>
44
+ </li>
45
+ <li>
46
+ <Link to="/docs/requirements">要件定義</Link>
47
+ </li>
48
+ <li>
49
+ <Link to="/docs/external">外部設計</Link>
50
+ </li>
51
+ <li>
52
+ <Link to="/docs/internal">内部設計</Link>
53
+ </li>
54
+ </ul>
55
+ </div>
56
+ </div>
57
+ <div className="col col--4">
58
+ <div className={styles.featureCard}>
59
+ <Heading as="h3">編集ガイド</Heading>
60
+ <ul>
61
+ <li>
62
+ <Link to="/docs/internal/rules/markdown">Markdownの書き方</Link>
63
+ </li>
64
+ <li>
65
+ <Link to="/docs/internal/rules/document-creation-rules">
66
+ ドキュメント作成ルール
67
+ </Link>
68
+ </li>
69
+ <li>
70
+ <Link to="/docs/internal/rules/review-process">レビュープロセス</Link>
71
+ </li>
72
+ </ul>
73
+ </div>
74
+ </div>
75
+ <div className="col col--4">
76
+ <div className={styles.featureCard}>
77
+ <Heading as="h3">運用ポリシー</Heading>
78
+ <ul>
79
+ <li>
80
+ <Link to="/docs/internal/policies/github">GitHubの利用方法</Link>
81
+ </li>
82
+ <li>
83
+ <Link to="/docs/internal/policies/pull-request-operation-flow">
84
+ pull request運用フロー
85
+ </Link>
86
+ </li>
87
+ <li>
88
+ <Link to="/docs/internal/policies/branch-naming-rules">branch命名規約</Link>
89
+ </li>
90
+ </ul>
91
+ </div>
92
+ </div>
93
+ </div>
33
94
  </div>
34
95
  </div>
35
96
  );
@@ -23,9 +23,9 @@ tag:
23
23
  ```
24
24
 
25
25
  ## 階層表示したい場合 {#to-layerd}
26
- 1. サブフォルダーを作成し、そこにファイル `_category_.yml` を作る
26
+ 1. サブフォルダーを作成し、そこにファイル `_category_.yaml` を作る
27
27
  1. 例
28
- ```yml title="_category_.yml"
28
+ ```yml title="_category_.yaml"
29
29
  label: 'ドキュメント編集方法'
30
30
  position: 4
31
31
  ```
@@ -3,7 +3,7 @@ id: index
3
3
  sidebar_position: 1
4
4
  hide_title: true
5
5
  ---
6
- import TBD from '@site/src/components/TBD';
6
+ import { TBD } from '@site/src/components/TBD';
7
7
 
8
8
  # Introduction
9
9
 
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  sidebar_position: 2
3
3
  ---
4
- import TBD from '@site/src/components/TBD';
4
+ import { TBD } from '@site/src/components/TBD';
5
5
 
6
6
  # SharePoint
7
7
  1. <TBD/> URLリンク
@@ -15,26 +15,28 @@
15
15
  "typecheck": "tsc"
16
16
  },
17
17
  "dependencies": {
18
- "@docusaurus/core": "^3.9.2",
19
- "@docusaurus/preset-classic": "^3.9.2"{{#hasMermaid}},
20
- "@docusaurus/theme-mermaid": "^3.9.2"{{/hasMermaid}},
21
- "@easyops-cn/docusaurus-search-local": "^0.52.2",
18
+ "@docusaurus/core": "3.10.1",
19
+ "@docusaurus/preset-classic": "3.10.1"{{#hasMermaid}},
20
+ "@docusaurus/theme-mermaid": "3.10.1"{{/hasMermaid}},
21
+ "@easyops-cn/docusaurus-search-local": "^0.55.1",
22
22
  "@mdx-js/react": "^3.0.0",
23
23
  "clsx": "^2.0.0"{{#hasPlantUML}},
24
- "docusaurus-theme-plantuml": "^1.0.2"{{/hasPlantUML}},
24
+ "docusaurus-theme-plantuml": "^1.3.2"{{/hasPlantUML}},
25
+ "js-yaml": "^4.1.1",
25
26
  "prism-react-renderer": "^2.4.1",
26
27
  "react": "^19.0.0",
27
28
  "react-dom": "^19.0.0"{{#hasRedoc}},
28
29
  "redocusaurus": "^2.5.0"{{/hasRedoc}}
29
30
  },
30
31
  "devDependencies": {
31
- "@docusaurus/module-type-aliases": "^3.9.2",
32
- "@docusaurus/tsconfig": "3.9.2",
33
- "@docusaurus/types": "^3.9.2",
34
- "@types/node": "^24.2.1",
32
+ "@biomejs/biome": "^2.4.15",
33
+ "@docusaurus/module-type-aliases": "3.10.1",
34
+ "@docusaurus/tsconfig": "3.10.1",
35
+ "@docusaurus/types": "3.10.1",
36
+ "@types/node": "^22.0.0",
35
37
  "@types/react": "^19.0.0",
36
38
  "@types/react-dom": "^19.0.0",
37
- "typescript": "~5.9.2"
39
+ "typescript": "~6.0.3"
38
40
  },
39
41
  "browserslist": {
40
42
  "production": [">0.5%", "not dead", "not op_mini all"],
@@ -1,8 +0,0 @@
1
- {
2
- "label": "要件定義一覧",
3
- "position": 2,
4
- "link": {
5
- "type": "generated-index",
6
- "description": "こんなことやあんなこと"
7
- }
8
- }
@@ -1,8 +0,0 @@
1
- {
2
- "label": "非機能要件一覧",
3
- "position": 3,
4
- "link": {
5
- "type": "generated-index",
6
- "description": "非機能のあれやこれ"
7
- }
8
- }