@codihaus/claude-skills 1.0.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.
- package/README.md +167 -0
- package/bin/cli.js +58 -0
- package/package.json +46 -0
- package/skills/_quality-attributes.md +392 -0
- package/skills/_registry.md +189 -0
- package/skills/debrief/SKILL.md +647 -0
- package/skills/debrief/references/change-request-template.md +124 -0
- package/skills/debrief/references/file-patterns.md +173 -0
- package/skills/debrief/references/group-codes.md +72 -0
- package/skills/debrief/references/research-queries.md +106 -0
- package/skills/debrief/references/use-case-template.md +141 -0
- package/skills/debrief/scripts/generate_questionnaire.py +195 -0
- package/skills/dev-arch/SKILL.md +747 -0
- package/skills/dev-changelog/SKILL.md +378 -0
- package/skills/dev-coding/SKILL.md +470 -0
- package/skills/dev-coding-backend/SKILL.md +361 -0
- package/skills/dev-coding-frontend/SKILL.md +534 -0
- package/skills/dev-coding-frontend/references/nextjs.md +477 -0
- package/skills/dev-review/SKILL.md +548 -0
- package/skills/dev-scout/SKILL.md +723 -0
- package/skills/dev-scout/references/feature-patterns.md +210 -0
- package/skills/dev-scout/references/file-patterns.md +252 -0
- package/skills/dev-scout/references/tech-detection.md +211 -0
- package/skills/dev-scout/scripts/scout-analyze.sh +280 -0
- package/skills/dev-specs/SKILL.md +577 -0
- package/skills/dev-specs/references/checklist.md +176 -0
- package/skills/dev-specs/references/spec-templates.md +460 -0
- package/skills/dev-test/SKILL.md +364 -0
- package/skills/utils/diagram/SKILL.md +205 -0
- package/skills/utils/diagram/references/common-errors.md +305 -0
- package/skills/utils/diagram/references/diagram-types.md +636 -0
- package/skills/utils/docs-graph/SKILL.md +204 -0
- package/skills/utils/gemini/SKILL.md +292 -0
- package/skills/utils/gemini/scripts/gemini-scan.py +340 -0
- package/skills/utils/gemini/scripts/setup.sh +169 -0
- package/src/commands/add.js +64 -0
- package/src/commands/doctor.js +179 -0
- package/src/commands/init.js +251 -0
- package/src/commands/list.js +88 -0
- package/src/commands/remove.js +60 -0
- package/src/commands/update.js +72 -0
- package/src/index.js +26 -0
- package/src/utils/config.js +272 -0
- package/src/utils/deps.js +599 -0
- package/src/utils/skills.js +253 -0
- package/templates/CLAUDE.md.template +58 -0
|
@@ -0,0 +1,636 @@
|
|
|
1
|
+
# Mermaid Diagram Types
|
|
2
|
+
|
|
3
|
+
Complete syntax reference for all supported diagram types.
|
|
4
|
+
|
|
5
|
+
## Quick Reference
|
|
6
|
+
|
|
7
|
+
| Type | Keyword | Best For |
|
|
8
|
+
|------|---------|----------|
|
|
9
|
+
| Flowchart | `flowchart` | Process flows, decisions |
|
|
10
|
+
| Sequence | `sequenceDiagram` | API interactions |
|
|
11
|
+
| State | `stateDiagram-v2` | Status lifecycle |
|
|
12
|
+
| ER Diagram | `erDiagram` | Database schema |
|
|
13
|
+
| Class | `classDiagram` | Object structures |
|
|
14
|
+
| Gantt | `gantt` | Project timelines |
|
|
15
|
+
| Journey | `journey` | User experience |
|
|
16
|
+
| Mindmap | `mindmap` | Hierarchical ideas |
|
|
17
|
+
| Pie | `pie` | Distribution |
|
|
18
|
+
| Timeline | `timeline` | Chronological events |
|
|
19
|
+
| Git Graph | `gitGraph` | Version control |
|
|
20
|
+
| Block | `block-beta` | System blocks |
|
|
21
|
+
| **Architecture** | `architecture-beta` | Cloud/AWS diagrams |
|
|
22
|
+
| Quadrant | `quadrantChart` | Priority matrix |
|
|
23
|
+
| XY Chart | `xychart-beta` | Line/bar charts |
|
|
24
|
+
| Sankey | `sankey-beta` | Flow visualization |
|
|
25
|
+
| Packet | `packet-beta` | Network protocols |
|
|
26
|
+
| C4 | `C4Context` | Software architecture |
|
|
27
|
+
| Requirement | `requirementDiagram` | Requirements tracking |
|
|
28
|
+
| Kanban | `kanban` | Task boards |
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Flowchart
|
|
33
|
+
|
|
34
|
+
**Best for**: User journeys, decision trees, process flows.
|
|
35
|
+
|
|
36
|
+
```mermaid
|
|
37
|
+
flowchart LR
|
|
38
|
+
A[Start] --> B{Decision}
|
|
39
|
+
B -->|Yes| C[Action 1]
|
|
40
|
+
B -->|No| D[Action 2]
|
|
41
|
+
C --> E[End]
|
|
42
|
+
D --> E
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**Directions**: `LR` (left-right), `TD` (top-down), `RL`, `BT`
|
|
46
|
+
|
|
47
|
+
**Node shapes**:
|
|
48
|
+
- `[text]` - Rectangle
|
|
49
|
+
- `(text)` - Rounded
|
|
50
|
+
- `{text}` - Diamond (decision)
|
|
51
|
+
- `([text])` - Stadium
|
|
52
|
+
- `[[text]]` - Subroutine
|
|
53
|
+
- `[(text)]` - Cylinder (database)
|
|
54
|
+
- `((text))` - Circle
|
|
55
|
+
- `>text]` - Flag
|
|
56
|
+
- `{{text}}` - Hexagon
|
|
57
|
+
|
|
58
|
+
**Links**:
|
|
59
|
+
- `-->` - Arrow
|
|
60
|
+
- `---` - Line
|
|
61
|
+
- `-.->` - Dotted arrow
|
|
62
|
+
- `==>` - Thick arrow
|
|
63
|
+
- `-->|text|` - Arrow with label
|
|
64
|
+
- `--o` - Circle end
|
|
65
|
+
- `--x` - Cross end
|
|
66
|
+
|
|
67
|
+
**Subgraphs**:
|
|
68
|
+
```mermaid
|
|
69
|
+
flowchart TB
|
|
70
|
+
subgraph API[API Layer]
|
|
71
|
+
A1[Route] --> A2[Controller]
|
|
72
|
+
end
|
|
73
|
+
subgraph DB[Database]
|
|
74
|
+
D1[(PostgreSQL)]
|
|
75
|
+
end
|
|
76
|
+
A2 --> D1
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Sequence Diagram
|
|
82
|
+
|
|
83
|
+
**Best for**: API flows, multi-actor interactions.
|
|
84
|
+
|
|
85
|
+
```mermaid
|
|
86
|
+
sequenceDiagram
|
|
87
|
+
actor User
|
|
88
|
+
participant API
|
|
89
|
+
participant DB
|
|
90
|
+
|
|
91
|
+
User->>API: Request
|
|
92
|
+
activate API
|
|
93
|
+
API->>DB: Query
|
|
94
|
+
DB-->>API: Result
|
|
95
|
+
API-->>User: Response
|
|
96
|
+
deactivate API
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
**Arrows**:
|
|
100
|
+
- `->>` - Solid with arrowhead
|
|
101
|
+
- `-->>` - Dotted with arrowhead
|
|
102
|
+
- `-x` - Solid with cross (async)
|
|
103
|
+
- `--x` - Dotted with cross
|
|
104
|
+
|
|
105
|
+
**Features**:
|
|
106
|
+
```mermaid
|
|
107
|
+
sequenceDiagram
|
|
108
|
+
participant A
|
|
109
|
+
participant B
|
|
110
|
+
|
|
111
|
+
Note over A,B: Shared note
|
|
112
|
+
|
|
113
|
+
loop Every minute
|
|
114
|
+
A->>B: Heartbeat
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
alt Success
|
|
118
|
+
B-->>A: OK
|
|
119
|
+
else Failure
|
|
120
|
+
B-->>A: Error
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
opt Optional step
|
|
124
|
+
A->>B: Extra call
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
par Parallel
|
|
128
|
+
A->>B: Request 1
|
|
129
|
+
and
|
|
130
|
+
A->>B: Request 2
|
|
131
|
+
end
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## State Diagram
|
|
137
|
+
|
|
138
|
+
**Best for**: Status lifecycle, state machines.
|
|
139
|
+
|
|
140
|
+
```mermaid
|
|
141
|
+
stateDiagram-v2
|
|
142
|
+
[*] --> Draft
|
|
143
|
+
Draft --> Review: Submit
|
|
144
|
+
Review --> Approved: Accept
|
|
145
|
+
Review --> Draft: Reject
|
|
146
|
+
Approved --> Published: Publish
|
|
147
|
+
Published --> [*]
|
|
148
|
+
|
|
149
|
+
state Review {
|
|
150
|
+
[*] --> Pending
|
|
151
|
+
Pending --> InProgress
|
|
152
|
+
InProgress --> Complete
|
|
153
|
+
}
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
---
|
|
157
|
+
|
|
158
|
+
## ER Diagram
|
|
159
|
+
|
|
160
|
+
**Best for**: Data relationships, database schema.
|
|
161
|
+
|
|
162
|
+
```mermaid
|
|
163
|
+
erDiagram
|
|
164
|
+
USER ||--o{ ORDER : places
|
|
165
|
+
ORDER ||--|{ ORDER_ITEM : contains
|
|
166
|
+
PRODUCT ||--o{ ORDER_ITEM : "ordered in"
|
|
167
|
+
|
|
168
|
+
USER {
|
|
169
|
+
int id PK
|
|
170
|
+
string email UK
|
|
171
|
+
string name
|
|
172
|
+
datetime created_at
|
|
173
|
+
}
|
|
174
|
+
ORDER {
|
|
175
|
+
int id PK
|
|
176
|
+
int user_id FK
|
|
177
|
+
decimal total
|
|
178
|
+
string status
|
|
179
|
+
}
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
**Relationships**:
|
|
183
|
+
- `||--||` - One to one
|
|
184
|
+
- `||--o{` - One to many
|
|
185
|
+
- `o{--o{` - Many to many
|
|
186
|
+
- `|o--o|` - Zero or one
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
## Architecture Diagram (Cloud/AWS)
|
|
191
|
+
|
|
192
|
+
**Best for**: Cloud infrastructure, AWS/GCP/Azure diagrams, CI/CD pipelines.
|
|
193
|
+
|
|
194
|
+
### Basic Syntax
|
|
195
|
+
|
|
196
|
+
```mermaid
|
|
197
|
+
architecture-beta
|
|
198
|
+
group api(cloud)[API]
|
|
199
|
+
|
|
200
|
+
service db(database)[Database] in api
|
|
201
|
+
service server(server)[Server] in api
|
|
202
|
+
service disk(disk)[Storage] in api
|
|
203
|
+
|
|
204
|
+
db:L -- R:server
|
|
205
|
+
disk:T -- B:server
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
### Components
|
|
209
|
+
|
|
210
|
+
**Groups** - Container for services:
|
|
211
|
+
```
|
|
212
|
+
group {id}({icon})[{label}]
|
|
213
|
+
group {id}({icon})[{label}] in {parent}
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
**Services** - Individual components:
|
|
217
|
+
```
|
|
218
|
+
service {id}({icon})[{label}]
|
|
219
|
+
service {id}({icon})[{label}] in {group}
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
**Edges** - Connections with direction (L/R/T/B):
|
|
223
|
+
```
|
|
224
|
+
{service1}:{side} -- {side}:{service2}
|
|
225
|
+
{service1}:{side} --> {side}:{service2} # with arrow
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
**Junctions** - 4-way connectors:
|
|
229
|
+
```
|
|
230
|
+
junction {id}
|
|
231
|
+
junction {id} in {parent}
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### Default Icons
|
|
235
|
+
|
|
236
|
+
| Icon | Keyword |
|
|
237
|
+
|------|---------|
|
|
238
|
+
| Cloud | `cloud` |
|
|
239
|
+
| Database | `database` |
|
|
240
|
+
| Disk/Storage | `disk` |
|
|
241
|
+
| Internet | `internet` |
|
|
242
|
+
| Server | `server` |
|
|
243
|
+
|
|
244
|
+
### AWS Architecture Example
|
|
245
|
+
|
|
246
|
+
```mermaid
|
|
247
|
+
architecture-beta
|
|
248
|
+
group aws(cloud)[AWS]
|
|
249
|
+
|
|
250
|
+
group vpc(cloud)[VPC] in aws
|
|
251
|
+
group public(cloud)[Public Subnet] in vpc
|
|
252
|
+
group private(cloud)[Private Subnet] in vpc
|
|
253
|
+
|
|
254
|
+
service internet(internet)[Internet]
|
|
255
|
+
service alb(server)[ALB] in public
|
|
256
|
+
service ec2(server)[EC2] in private
|
|
257
|
+
service rds(database)[RDS] in private
|
|
258
|
+
service s3(disk)[S3] in aws
|
|
259
|
+
|
|
260
|
+
internet:R --> L:alb
|
|
261
|
+
alb:R --> L:ec2
|
|
262
|
+
ec2:R --> L:rds
|
|
263
|
+
ec2:B --> T:s3
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
### Custom Icons (Iconify)
|
|
267
|
+
|
|
268
|
+
For AWS-specific icons, register icon packs:
|
|
269
|
+
```javascript
|
|
270
|
+
// In your setup
|
|
271
|
+
import { icons } from '@iconify-json/logos';
|
|
272
|
+
mermaid.registerIconPacks([{ name: icons.prefix, icons }]);
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
Then use:
|
|
276
|
+
```
|
|
277
|
+
service lambda(logos:aws-lambda)[Lambda]
|
|
278
|
+
service s3(logos:aws-s3)[S3 Bucket]
|
|
279
|
+
service ec2(logos:aws-ec2)[EC2 Instance]
|
|
280
|
+
service rds(logos:aws-aurora)[Aurora DB]
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
### CI/CD Pipeline Example
|
|
284
|
+
|
|
285
|
+
```mermaid
|
|
286
|
+
architecture-beta
|
|
287
|
+
group cicd(cloud)[CI/CD Pipeline]
|
|
288
|
+
|
|
289
|
+
service github(internet)[GitHub]
|
|
290
|
+
service ci(server)[CI Server] in cicd
|
|
291
|
+
service test(server)[Test Runner] in cicd
|
|
292
|
+
service deploy(server)[Deploy] in cicd
|
|
293
|
+
service prod(cloud)[Production]
|
|
294
|
+
|
|
295
|
+
github:R --> L:ci
|
|
296
|
+
ci:R --> L:test
|
|
297
|
+
test:R --> L:deploy
|
|
298
|
+
deploy:R --> L:prod
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
### Microservices Example
|
|
302
|
+
|
|
303
|
+
```mermaid
|
|
304
|
+
architecture-beta
|
|
305
|
+
group frontend(cloud)[Frontend]
|
|
306
|
+
group backend(cloud)[Backend Services]
|
|
307
|
+
group data(cloud)[Data Layer]
|
|
308
|
+
|
|
309
|
+
service web(server)[Web App] in frontend
|
|
310
|
+
service mobile(server)[Mobile API] in frontend
|
|
311
|
+
|
|
312
|
+
service auth(server)[Auth Service] in backend
|
|
313
|
+
service api(server)[API Gateway] in backend
|
|
314
|
+
service orders(server)[Orders] in backend
|
|
315
|
+
service payments(server)[Payments] in backend
|
|
316
|
+
|
|
317
|
+
service postgres(database)[PostgreSQL] in data
|
|
318
|
+
service redis(database)[Redis] in data
|
|
319
|
+
service s3(disk)[S3] in data
|
|
320
|
+
|
|
321
|
+
junction junc1 in backend
|
|
322
|
+
|
|
323
|
+
web:B --> T:api
|
|
324
|
+
mobile:B --> T:api
|
|
325
|
+
api:B --> T:junc1
|
|
326
|
+
junc1:L --> R:auth
|
|
327
|
+
junc1:R --> L:orders
|
|
328
|
+
junc1:B --> T:payments
|
|
329
|
+
orders:B --> T:postgres
|
|
330
|
+
auth:B --> T:redis
|
|
331
|
+
payments:B --> T:s3
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## Quadrant Chart
|
|
337
|
+
|
|
338
|
+
**Best for**: Priority matrix, effort/impact analysis.
|
|
339
|
+
|
|
340
|
+
```mermaid
|
|
341
|
+
quadrantChart
|
|
342
|
+
title Priority Matrix
|
|
343
|
+
x-axis Low Effort --> High Effort
|
|
344
|
+
y-axis Low Impact --> High Impact
|
|
345
|
+
quadrant-1 Do First
|
|
346
|
+
quadrant-2 Schedule
|
|
347
|
+
quadrant-3 Delegate
|
|
348
|
+
quadrant-4 Eliminate
|
|
349
|
+
|
|
350
|
+
Feature A: [0.8, 0.9]
|
|
351
|
+
Feature B: [0.2, 0.8]
|
|
352
|
+
Feature C: [0.7, 0.3]
|
|
353
|
+
Feature D: [0.3, 0.2]
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
---
|
|
357
|
+
|
|
358
|
+
## XY Chart
|
|
359
|
+
|
|
360
|
+
**Best for**: Line charts, bar charts, trends.
|
|
361
|
+
|
|
362
|
+
```mermaid
|
|
363
|
+
xychart-beta
|
|
364
|
+
title "Monthly Revenue"
|
|
365
|
+
x-axis [Jan, Feb, Mar, Apr, May, Jun]
|
|
366
|
+
y-axis "Revenue (USD)" 0 --> 10000
|
|
367
|
+
bar [5000, 6000, 7500, 8200, 7800, 9200]
|
|
368
|
+
line [5000, 6000, 7500, 8200, 7800, 9200]
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
### Multi-series
|
|
372
|
+
|
|
373
|
+
```mermaid
|
|
374
|
+
xychart-beta
|
|
375
|
+
title "Sales Comparison"
|
|
376
|
+
x-axis [Q1, Q2, Q3, Q4]
|
|
377
|
+
y-axis "Sales" 0 --> 100
|
|
378
|
+
bar "Product A" [30, 45, 60, 80]
|
|
379
|
+
bar "Product B" [20, 35, 50, 70]
|
|
380
|
+
line "Target" [40, 50, 60, 70]
|
|
381
|
+
```
|
|
382
|
+
|
|
383
|
+
---
|
|
384
|
+
|
|
385
|
+
## Sankey Diagram
|
|
386
|
+
|
|
387
|
+
**Best for**: Flow visualization, resource allocation, conversion funnels.
|
|
388
|
+
|
|
389
|
+
```mermaid
|
|
390
|
+
sankey-beta
|
|
391
|
+
|
|
392
|
+
Website,Signup,5000
|
|
393
|
+
Website,Bounce,3000
|
|
394
|
+
Signup,Free Trial,4000
|
|
395
|
+
Signup,Direct Buy,1000
|
|
396
|
+
Free Trial,Convert,2000
|
|
397
|
+
Free Trial,Churn,2000
|
|
398
|
+
```
|
|
399
|
+
|
|
400
|
+
### Budget Flow Example
|
|
401
|
+
|
|
402
|
+
```mermaid
|
|
403
|
+
sankey-beta
|
|
404
|
+
|
|
405
|
+
Revenue,Operations,40
|
|
406
|
+
Revenue,Marketing,25
|
|
407
|
+
Revenue,R&D,20
|
|
408
|
+
Revenue,Admin,15
|
|
409
|
+
Operations,Salaries,30
|
|
410
|
+
Operations,Infrastructure,10
|
|
411
|
+
Marketing,Ads,15
|
|
412
|
+
Marketing,Events,10
|
|
413
|
+
```
|
|
414
|
+
|
|
415
|
+
---
|
|
416
|
+
|
|
417
|
+
## Packet Diagram
|
|
418
|
+
|
|
419
|
+
**Best for**: Network protocols, binary data formats.
|
|
420
|
+
|
|
421
|
+
```mermaid
|
|
422
|
+
packet-beta
|
|
423
|
+
0-15: "Source Port"
|
|
424
|
+
16-31: "Destination Port"
|
|
425
|
+
32-63: "Sequence Number"
|
|
426
|
+
64-95: "Acknowledgment Number"
|
|
427
|
+
96-99: "Data Offset"
|
|
428
|
+
100-105: "Reserved"
|
|
429
|
+
106-111: "Flags"
|
|
430
|
+
112-127: "Window Size"
|
|
431
|
+
128-143: "Checksum"
|
|
432
|
+
144-159: "Urgent Pointer"
|
|
433
|
+
```
|
|
434
|
+
|
|
435
|
+
---
|
|
436
|
+
|
|
437
|
+
## C4 Diagram
|
|
438
|
+
|
|
439
|
+
**Best for**: Software architecture at different abstraction levels.
|
|
440
|
+
|
|
441
|
+
### Context
|
|
442
|
+
|
|
443
|
+
```mermaid
|
|
444
|
+
C4Context
|
|
445
|
+
title System Context
|
|
446
|
+
|
|
447
|
+
Person(user, "User", "End user of the system")
|
|
448
|
+
System(system, "Our System", "Main application")
|
|
449
|
+
System_Ext(email, "Email Service", "Sends emails")
|
|
450
|
+
|
|
451
|
+
Rel(user, system, "Uses")
|
|
452
|
+
Rel(system, email, "Sends emails via")
|
|
453
|
+
```
|
|
454
|
+
|
|
455
|
+
### Container
|
|
456
|
+
|
|
457
|
+
```mermaid
|
|
458
|
+
C4Container
|
|
459
|
+
title Container Diagram
|
|
460
|
+
|
|
461
|
+
Person(user, "User")
|
|
462
|
+
|
|
463
|
+
Container_Boundary(system, "System") {
|
|
464
|
+
Container(web, "Web App", "React", "Frontend")
|
|
465
|
+
Container(api, "API", "Node.js", "Backend")
|
|
466
|
+
ContainerDb(db, "Database", "PostgreSQL", "Stores data")
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
Rel(user, web, "Uses", "HTTPS")
|
|
470
|
+
Rel(web, api, "Calls", "REST")
|
|
471
|
+
Rel(api, db, "Reads/Writes", "SQL")
|
|
472
|
+
```
|
|
473
|
+
|
|
474
|
+
---
|
|
475
|
+
|
|
476
|
+
## Mindmap
|
|
477
|
+
|
|
478
|
+
**Best for**: Feature breakdown, brainstorming.
|
|
479
|
+
|
|
480
|
+
```mermaid
|
|
481
|
+
mindmap
|
|
482
|
+
root((Project))
|
|
483
|
+
Features
|
|
484
|
+
Auth
|
|
485
|
+
Login
|
|
486
|
+
Signup
|
|
487
|
+
OAuth
|
|
488
|
+
Payments
|
|
489
|
+
Checkout
|
|
490
|
+
Subscriptions
|
|
491
|
+
Refunds
|
|
492
|
+
Technical
|
|
493
|
+
Frontend
|
|
494
|
+
React
|
|
495
|
+
Tailwind
|
|
496
|
+
Backend
|
|
497
|
+
Node.js
|
|
498
|
+
PostgreSQL
|
|
499
|
+
```
|
|
500
|
+
|
|
501
|
+
---
|
|
502
|
+
|
|
503
|
+
## Timeline
|
|
504
|
+
|
|
505
|
+
**Best for**: Project phases, milestones, history.
|
|
506
|
+
|
|
507
|
+
```mermaid
|
|
508
|
+
timeline
|
|
509
|
+
title Project Roadmap
|
|
510
|
+
section Phase 1
|
|
511
|
+
2024-Q1 : Requirements
|
|
512
|
+
: Design
|
|
513
|
+
section Phase 2
|
|
514
|
+
2024-Q2 : Development
|
|
515
|
+
: Testing
|
|
516
|
+
section Phase 3
|
|
517
|
+
2024-Q3 : Beta Launch
|
|
518
|
+
2024-Q4 : GA Release
|
|
519
|
+
```
|
|
520
|
+
|
|
521
|
+
---
|
|
522
|
+
|
|
523
|
+
## Journey
|
|
524
|
+
|
|
525
|
+
**Best for**: User experience mapping, satisfaction tracking.
|
|
526
|
+
|
|
527
|
+
```mermaid
|
|
528
|
+
journey
|
|
529
|
+
title User Onboarding
|
|
530
|
+
section Discovery
|
|
531
|
+
Visit website: 5: User
|
|
532
|
+
Read docs: 4: User
|
|
533
|
+
section Signup
|
|
534
|
+
Create account: 3: User
|
|
535
|
+
Verify email: 2: User
|
|
536
|
+
section First Use
|
|
537
|
+
Complete tutorial: 4: User
|
|
538
|
+
Create first item: 5: User
|
|
539
|
+
```
|
|
540
|
+
|
|
541
|
+
Score: 1 (worst) to 5 (best)
|
|
542
|
+
|
|
543
|
+
---
|
|
544
|
+
|
|
545
|
+
## Pie Chart
|
|
546
|
+
|
|
547
|
+
**Best for**: Distribution, percentages.
|
|
548
|
+
|
|
549
|
+
```mermaid
|
|
550
|
+
pie showData
|
|
551
|
+
title Traffic Sources
|
|
552
|
+
"Organic" : 45
|
|
553
|
+
"Direct" : 25
|
|
554
|
+
"Referral" : 20
|
|
555
|
+
"Social" : 10
|
|
556
|
+
```
|
|
557
|
+
|
|
558
|
+
---
|
|
559
|
+
|
|
560
|
+
## Git Graph
|
|
561
|
+
|
|
562
|
+
**Best for**: Branch strategies, version control flows.
|
|
563
|
+
|
|
564
|
+
```mermaid
|
|
565
|
+
gitGraph
|
|
566
|
+
commit id: "Initial"
|
|
567
|
+
branch develop
|
|
568
|
+
checkout develop
|
|
569
|
+
commit id: "Feature 1"
|
|
570
|
+
commit id: "Feature 2"
|
|
571
|
+
checkout main
|
|
572
|
+
merge develop id: "Release v1.0"
|
|
573
|
+
branch hotfix
|
|
574
|
+
commit id: "Fix bug"
|
|
575
|
+
checkout main
|
|
576
|
+
merge hotfix
|
|
577
|
+
```
|
|
578
|
+
|
|
579
|
+
---
|
|
580
|
+
|
|
581
|
+
## Block Diagram
|
|
582
|
+
|
|
583
|
+
**Best for**: System architecture blocks, layouts.
|
|
584
|
+
|
|
585
|
+
```mermaid
|
|
586
|
+
block-beta
|
|
587
|
+
columns 3
|
|
588
|
+
|
|
589
|
+
Frontend:3
|
|
590
|
+
block:backend:2
|
|
591
|
+
API
|
|
592
|
+
Worker
|
|
593
|
+
end
|
|
594
|
+
Cache
|
|
595
|
+
Database:2
|
|
596
|
+
Storage
|
|
597
|
+
```
|
|
598
|
+
|
|
599
|
+
---
|
|
600
|
+
|
|
601
|
+
## Requirement Diagram
|
|
602
|
+
|
|
603
|
+
**Best for**: Requirements tracking, traceability.
|
|
604
|
+
|
|
605
|
+
```mermaid
|
|
606
|
+
requirementDiagram
|
|
607
|
+
requirement user_auth {
|
|
608
|
+
id: REQ-001
|
|
609
|
+
text: Users must authenticate
|
|
610
|
+
risk: high
|
|
611
|
+
verifymethod: test
|
|
612
|
+
}
|
|
613
|
+
|
|
614
|
+
element login_page {
|
|
615
|
+
type: ui
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
login_page - satisfies -> user_auth
|
|
619
|
+
```
|
|
620
|
+
|
|
621
|
+
---
|
|
622
|
+
|
|
623
|
+
## Tips
|
|
624
|
+
|
|
625
|
+
1. **Keep diagrams focused** - One concept per diagram
|
|
626
|
+
2. **Use meaningful IDs** - `userLogin` not `A`
|
|
627
|
+
3. **Add labels** - Especially on decision branches
|
|
628
|
+
4. **Test incrementally** - Validate after each addition
|
|
629
|
+
5. **Use subgraphs/groups** - Organize complex diagrams
|
|
630
|
+
6. **Match direction to reading** - LR for processes, TD for hierarchies
|
|
631
|
+
|
|
632
|
+
## References
|
|
633
|
+
|
|
634
|
+
- [Mermaid Official Docs](https://mermaid.js.org/)
|
|
635
|
+
- [Architecture Diagrams](https://mermaid.js.org/syntax/architecture.html)
|
|
636
|
+
- [Iconify Icons](https://iconify.design/)
|