@groupby/ai-dev 0.5.9 → 0.5.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/teams/fhr-neowise/commands/address-pr.md +120 -0
- package/teams/fhr-neowise/commands/ready-pr.md +70 -0
- package/teams/fhr-neowise/commands/review-pr.md +111 -0
- package/teams/fhr-neowise/commands/tdd-implementation.md +86 -0
- package/teams/fhr-neowise/commands/write-plan.md +23 -0
- package/teams/fhr-neowise/commands/write-pr.md +21 -0
- package/teams/fhr-neowise/commands/write-spec.md +25 -0
- package/teams/fhr-neowise/skills/agent-routing/SKILL.md +72 -0
- package/teams/fhr-neowise/skills/code-review/SKILL.md +83 -0
- package/teams/fhr-neowise/skills/code-review/review-template.md +90 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/SKILL.md +94 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/BEST_PRACTICES.md +96 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/architecture.md +434 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/block.md +753 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/c4.md +619 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/classDiagram.md +1186 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/config-configuration.md +72 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/config-directives.md +342 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/config-layouts.md +40 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/config-math.md +96 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/config-theming.md +246 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/config-tidy-tree.md +89 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/cynefin.md +279 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/entityRelationshipDiagram.md +670 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/eventmodeling.md +475 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/examples.md +301 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/flowchart.md +2116 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/gantt.md +725 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/gitgraph.md +2138 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/ishikawa.md +66 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/kanban.md +161 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/mindmap.md +335 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/packet.md +153 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/pie.md +93 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/quadrantChart.md +267 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/radar.md +269 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/railroad.md +337 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/requirementDiagram.md +495 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/sankey.md +415 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/sequenceDiagram.md +1195 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/stateDiagram.md +670 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/timeline.md +571 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/treeView.md +321 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/treemap.md +353 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/userJourney.md +42 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/venn.md +134 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/wardley.md +732 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/xyChart.md +312 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/references/zenuml.md +474 -0
- package/teams/fhr-neowise/skills/mermaid-diagram/scripts/sync_docs.py +138 -0
- package/teams/fhr-neowise/skills/pull-request-authoring/COMPLEX.template.md +52 -0
- package/teams/fhr-neowise/skills/pull-request-authoring/NON-CODE.template.md +15 -0
- package/teams/fhr-neowise/skills/pull-request-authoring/SIMPLE.template.md +20 -0
- package/teams/fhr-neowise/skills/pull-request-authoring/SKILL.md +102 -0
- package/teams/fhr-neowise/skills/spec-investigation/SKILL.md +139 -0
- package/teams/fhr-neowise/skills/spec-investigation/TEMPLATE.spec.md +74 -0
- package/teams/fhr-neowise/skills/tdd-workflow/SKILL.md +137 -0
- package/teams/fhr-neowise/skills/write-plan/SKILL.md +285 -0
- package/teams/fhr-neowise/skills/write-plan/assets/TEMPLATE.checklist.json +79 -0
- package/teams/fhr-neowise/skills/write-plan/assets/TEMPLATE.plan.md +158 -0
- package/teams/rangers/resources/project-doc-contract.md +41 -0
- package/teams/rangers/skills/team-code-review/SKILL.md +66 -0
- package/teams/rangers/skills/team-development/SKILL.md +43 -0
- package/teams/rangers/skills/team-docs-snapshot/SKILL.md +58 -0
- package/teams/rangers/skills/team-docs-snapshot/scripts/collect_project_docs.py +166 -0
- package/teams/rangers/skills/team-phase-planning/SKILL.md +63 -0
- package/teams/rangers/skills/team-project-orientation/SKILL.md +46 -0
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
> **Warning**
|
|
2
|
+
>
|
|
3
|
+
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
|
|
4
|
+
>
|
|
5
|
+
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/config/theming.md](../../packages/mermaid/src/docs/config/theming.md).
|
|
6
|
+
|
|
7
|
+
# Theme Configuration
|
|
8
|
+
|
|
9
|
+
Dynamic and integrated theme configuration was introduced in Mermaid version 8.7.0.
|
|
10
|
+
|
|
11
|
+
Themes can now be customized at the site-wide level, or on individual Mermaid diagrams. For site-wide theme customization, the `initialize` call is used. For diagram specific customization, frontmatter config is used.
|
|
12
|
+
|
|
13
|
+
## Available Themes
|
|
14
|
+
|
|
15
|
+
1. [**default**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-default.js) - This is the default theme for all diagrams.
|
|
16
|
+
|
|
17
|
+
2. [**neutral**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-neutral.js) - This theme is great for black and white documents that will be printed.
|
|
18
|
+
|
|
19
|
+
3. [**dark**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-dark.js) - This theme goes well with dark-colored elements or dark-mode.
|
|
20
|
+
|
|
21
|
+
4. [**forest**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-forest.js) - This theme contains shades of green.
|
|
22
|
+
|
|
23
|
+
5. [**base**](https://github.com/mermaid-js/mermaid/blob/develop/packages/mermaid/src/themes/theme-base.js) - This is the only theme that can be modified. Use this theme as the base for customizations.
|
|
24
|
+
|
|
25
|
+
## Site-wide Theme
|
|
26
|
+
|
|
27
|
+
To customize themes site-wide, call the `initialize` method on the `mermaid`.
|
|
28
|
+
|
|
29
|
+
Example of `initialize` call setting `theme` to `base`:
|
|
30
|
+
|
|
31
|
+
```javascript
|
|
32
|
+
mermaid.initialize({
|
|
33
|
+
securityLevel: 'loose',
|
|
34
|
+
theme: 'base',
|
|
35
|
+
});
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
## Diagram-specific Themes
|
|
39
|
+
|
|
40
|
+
To customize the theme of an individual diagram, use frontmatter config.
|
|
41
|
+
|
|
42
|
+
Example of frontmatter config setting the `theme` to `forest`:
|
|
43
|
+
|
|
44
|
+
```mermaid-example
|
|
45
|
+
---
|
|
46
|
+
config:
|
|
47
|
+
theme: 'forest'
|
|
48
|
+
---
|
|
49
|
+
graph TD
|
|
50
|
+
a --> b
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
```mermaid
|
|
54
|
+
---
|
|
55
|
+
config:
|
|
56
|
+
theme: 'forest'
|
|
57
|
+
---
|
|
58
|
+
graph TD
|
|
59
|
+
a --> b
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
> **Reminder**: the only theme that can be customized is the `base` theme. The following section covers how to use `themeVariables` for customizations.
|
|
63
|
+
|
|
64
|
+
## Customizing Themes with `themeVariables`
|
|
65
|
+
|
|
66
|
+
To make a custom theme, modify `themeVariables` via frontmatter config.
|
|
67
|
+
|
|
68
|
+
You will need to use the [base](#available-themes) theme as it is the only modifiable theme.
|
|
69
|
+
|
|
70
|
+
| Parameter | Description | Type | Properties |
|
|
71
|
+
| -------------- | ---------------------------------- | ------ | ----------------------------------------------------------------------------------- |
|
|
72
|
+
| themeVariables | Modifiable with frontmatter config | Object | `primaryColor`, `primaryTextColor`, `lineColor` ([see full list](#theme-variables)) |
|
|
73
|
+
|
|
74
|
+
Example of modifying `themeVariables` using frontmatter config:
|
|
75
|
+
|
|
76
|
+
```mermaid-example
|
|
77
|
+
---
|
|
78
|
+
config:
|
|
79
|
+
theme: 'base'
|
|
80
|
+
themeVariables:
|
|
81
|
+
primaryColor: '#BB2528'
|
|
82
|
+
primaryTextColor: '#fff'
|
|
83
|
+
primaryBorderColor: '#7C0000'
|
|
84
|
+
lineColor: '#F8B229'
|
|
85
|
+
secondaryColor: '#006100'
|
|
86
|
+
tertiaryColor: '#fff'
|
|
87
|
+
---
|
|
88
|
+
graph TD
|
|
89
|
+
A[Christmas] -->|Get money| B(Go shopping)
|
|
90
|
+
B --> C{Let me think}
|
|
91
|
+
B --> G[/Another/]
|
|
92
|
+
C ==>|One| D[Laptop]
|
|
93
|
+
C -->|Two| E[iPhone]
|
|
94
|
+
C -->|Three| F[fa:fa-car Car]
|
|
95
|
+
subgraph section
|
|
96
|
+
C
|
|
97
|
+
D
|
|
98
|
+
E
|
|
99
|
+
F
|
|
100
|
+
G
|
|
101
|
+
end
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
```mermaid
|
|
105
|
+
---
|
|
106
|
+
config:
|
|
107
|
+
theme: 'base'
|
|
108
|
+
themeVariables:
|
|
109
|
+
primaryColor: '#BB2528'
|
|
110
|
+
primaryTextColor: '#fff'
|
|
111
|
+
primaryBorderColor: '#7C0000'
|
|
112
|
+
lineColor: '#F8B229'
|
|
113
|
+
secondaryColor: '#006100'
|
|
114
|
+
tertiaryColor: '#fff'
|
|
115
|
+
---
|
|
116
|
+
graph TD
|
|
117
|
+
A[Christmas] -->|Get money| B(Go shopping)
|
|
118
|
+
B --> C{Let me think}
|
|
119
|
+
B --> G[/Another/]
|
|
120
|
+
C ==>|One| D[Laptop]
|
|
121
|
+
C -->|Two| E[iPhone]
|
|
122
|
+
C -->|Three| F[fa:fa-car Car]
|
|
123
|
+
subgraph section
|
|
124
|
+
C
|
|
125
|
+
D
|
|
126
|
+
E
|
|
127
|
+
F
|
|
128
|
+
G
|
|
129
|
+
end
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Color and Color Calculation
|
|
133
|
+
|
|
134
|
+
To ensure diagram readability, the default value of certain variables is calculated or derived from other variables. For example, `primaryBorderColor` is derived from the `primaryColor` variable. So if the `primaryColor` variable is customized, Mermaid will adjust `primaryBorderColor` automatically. Adjustments can mean a color inversion, a hue change, a darkening/lightening by 10%, etc.
|
|
135
|
+
|
|
136
|
+
The theming engine will only recognize hex colors and not color names. So, the value `#ff0000` will work, but `red` will not.
|
|
137
|
+
|
|
138
|
+
## Theme Variables
|
|
139
|
+
|
|
140
|
+
| Variable | Default value | Description |
|
|
141
|
+
| -------------------- | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------------- |
|
|
142
|
+
| darkMode | false | Affects how derived colors are calculated. Set value to `true` for dark mode. |
|
|
143
|
+
| background | #f4f4f4 | Used to calculate color for items that should either be background colored or contrasting to the background |
|
|
144
|
+
| fontFamily | trebuchet ms, verdana, arial | Font family for diagram text |
|
|
145
|
+
| fontSize | 16px | Font size in pixels |
|
|
146
|
+
| primaryColor | #fff4dd | Color to be used as background in nodes, other colors will be derived from this |
|
|
147
|
+
| primaryTextColor | calculated from darkMode #ddd/#333 | Color to be used as text color in nodes using `primaryColor` |
|
|
148
|
+
| secondaryColor | calculated from primaryColor | |
|
|
149
|
+
| primaryBorderColor | calculated from primaryColor | Color to be used as border in nodes using `primaryColor` |
|
|
150
|
+
| secondaryBorderColor | calculated from secondaryColor | Color to be used as border in nodes using `secondaryColor` |
|
|
151
|
+
| secondaryTextColor | calculated from secondaryColor | Color to be used as text color in nodes using `secondaryColor` |
|
|
152
|
+
| tertiaryColor | calculated from primaryColor | |
|
|
153
|
+
| tertiaryBorderColor | calculated from tertiaryColor | Color to be used as border in nodes using `tertiaryColor` |
|
|
154
|
+
| tertiaryTextColor | calculated from tertiaryColor | Color to be used as text color in nodes using `tertiaryColor` |
|
|
155
|
+
| noteBkgColor | #fff5ad | Color used as background in notes |
|
|
156
|
+
| noteTextColor | #333 | Text color in note rectangles |
|
|
157
|
+
| noteBorderColor | calculated from noteBkgColor | Border color in note rectangles |
|
|
158
|
+
| lineColor | calculated from background | |
|
|
159
|
+
| textColor | calculated from primaryTextColor | Text in diagram over the background for instance text on labels and on signals in sequence diagram or the title in Gantt diagram |
|
|
160
|
+
| mainBkg | calculated from primaryColor | Background in flowchart objects like rects/circles, class diagram classes, sequence diagram etc |
|
|
161
|
+
| errorBkgColor | tertiaryColor | Color for syntax error message |
|
|
162
|
+
| errorTextColor | tertiaryTextColor | Color for syntax error message |
|
|
163
|
+
|
|
164
|
+
## Flowchart Variables
|
|
165
|
+
|
|
166
|
+
| Variable | Default value | Description |
|
|
167
|
+
| ------------------- | ------------------------------ | --------------------------- |
|
|
168
|
+
| nodeBorder | primaryBorderColor | Node Border Color |
|
|
169
|
+
| clusterBkg | tertiaryColor | Background in subgraphs |
|
|
170
|
+
| clusterBorder | tertiaryBorderColor | Cluster Border Color |
|
|
171
|
+
| defaultLinkColor | lineColor | Link Color |
|
|
172
|
+
| titleColor | tertiaryTextColor | Title Color |
|
|
173
|
+
| edgeLabelBackground | calculated from secondaryColor | |
|
|
174
|
+
| nodeTextColor | primaryTextColor | Color for text inside Nodes |
|
|
175
|
+
|
|
176
|
+
## Sequence Diagram Variables
|
|
177
|
+
|
|
178
|
+
| Variable | Default value | Description |
|
|
179
|
+
| --------------------- | ------------------------------ | --------------------------- |
|
|
180
|
+
| actorBkg | mainBkg | Actor Background Color |
|
|
181
|
+
| actorBorder | primaryBorderColor | Actor Border Color |
|
|
182
|
+
| actorTextColor | primaryTextColor | Actor Text Color |
|
|
183
|
+
| actorLineColor | actorBorder | Actor Line Color |
|
|
184
|
+
| signalColor | textColor | Signal Color |
|
|
185
|
+
| signalTextColor | textColor | Signal Text Color |
|
|
186
|
+
| labelBoxBkgColor | actorBkg | Label Box Background Color |
|
|
187
|
+
| labelBoxBorderColor | actorBorder | Label Box Border Color |
|
|
188
|
+
| labelTextColor | actorTextColor | Label Text Color |
|
|
189
|
+
| loopTextColor | actorTextColor | Loop Text Color |
|
|
190
|
+
| activationBorderColor | calculated from secondaryColor | Activation Border Color |
|
|
191
|
+
| activationBkgColor | secondaryColor | Activation Background Color |
|
|
192
|
+
| sequenceNumberColor | calculated from lineColor | Sequence Number Color |
|
|
193
|
+
|
|
194
|
+
## Pie Diagram Variables
|
|
195
|
+
|
|
196
|
+
| Variable | Default value | Description |
|
|
197
|
+
| ------------------- | ------------------------------ | ------------------------------------------ |
|
|
198
|
+
| pie1 | primaryColor | Fill for 1st section in pie diagram |
|
|
199
|
+
| pie2 | secondaryColor | Fill for 2nd section in pie diagram |
|
|
200
|
+
| pie3 | calculated from tertiary | Fill for 3rd section in pie diagram |
|
|
201
|
+
| pie4 | calculated from primaryColor | Fill for 4th section in pie diagram |
|
|
202
|
+
| pie5 | calculated from secondaryColor | Fill for 5th section in pie diagram |
|
|
203
|
+
| pie6 | calculated from tertiaryColor | Fill for 6th section in pie diagram |
|
|
204
|
+
| pie7 | calculated from primaryColor | Fill for 7th section in pie diagram |
|
|
205
|
+
| pie8 | calculated from primaryColor | Fill for 8th section in pie diagram |
|
|
206
|
+
| pie9 | calculated from primaryColor | Fill for 9th section in pie diagram |
|
|
207
|
+
| pie10 | calculated from primaryColor | Fill for 10th section in pie diagram |
|
|
208
|
+
| pie11 | calculated from primaryColor | Fill for 11th section in pie diagram |
|
|
209
|
+
| pie12 | calculated from primaryColor | Fill for 12th section in pie diagram |
|
|
210
|
+
| pieTitleTextSize | 25px | Title text size |
|
|
211
|
+
| pieTitleTextColor | taskTextDarkColor | Title text color |
|
|
212
|
+
| pieSectionTextSize | 17px | Text size of individual section labels |
|
|
213
|
+
| pieSectionTextColor | textColor | Text color of individual section labels |
|
|
214
|
+
| pieLegendTextSize | 17px | Text size of labels in diagram legend |
|
|
215
|
+
| pieLegendTextColor | taskTextDarkColor | Text color of labels in diagram legend |
|
|
216
|
+
| pieStrokeColor | black | Border color of individual pie sections |
|
|
217
|
+
| pieStrokeWidth | 2px | Border width of individual pie sections |
|
|
218
|
+
| pieOuterStrokeWidth | 2px | Border width of pie diagram's outer circle |
|
|
219
|
+
| pieOuterStrokeColor | black | Border color of pie diagram's outer circle |
|
|
220
|
+
| pieOpacity | 0.7 | Opacity of individual pie sections |
|
|
221
|
+
|
|
222
|
+
## State Colors
|
|
223
|
+
|
|
224
|
+
| Variable | Default value | Description |
|
|
225
|
+
| ------------- | ---------------- | -------------------------------------------- |
|
|
226
|
+
| labelColor | primaryTextColor | |
|
|
227
|
+
| altBackground | tertiaryColor | Used for background in deep composite states |
|
|
228
|
+
|
|
229
|
+
## Class Colors
|
|
230
|
+
|
|
231
|
+
| Variable | Default value | Description |
|
|
232
|
+
| --------- | ------------- | ------------------------------- |
|
|
233
|
+
| classText | textColor | Color of Text in class diagrams |
|
|
234
|
+
|
|
235
|
+
## User Journey Colors
|
|
236
|
+
|
|
237
|
+
| Variable | Default value | Description |
|
|
238
|
+
| --------- | ------------------------------ | --------------------------------------- |
|
|
239
|
+
| fillType0 | primaryColor | Fill for 1st section in journey diagram |
|
|
240
|
+
| fillType1 | secondaryColor | Fill for 2nd section in journey diagram |
|
|
241
|
+
| fillType2 | calculated from primaryColor | Fill for 3rd section in journey diagram |
|
|
242
|
+
| fillType3 | calculated from secondaryColor | Fill for 4th section in journey diagram |
|
|
243
|
+
| fillType4 | calculated from primaryColor | Fill for 5th section in journey diagram |
|
|
244
|
+
| fillType5 | calculated from secondaryColor | Fill for 6th section in journey diagram |
|
|
245
|
+
| fillType6 | calculated from primaryColor | Fill for 7th section in journey diagram |
|
|
246
|
+
| fillType7 | calculated from secondaryColor | Fill for 8th section in journey diagram |
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
> **Warning**
|
|
2
|
+
>
|
|
3
|
+
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
|
|
4
|
+
>
|
|
5
|
+
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/config/tidy-tree.md](../../packages/mermaid/src/docs/config/tidy-tree.md).
|
|
6
|
+
|
|
7
|
+
# Tidy-tree Layout
|
|
8
|
+
|
|
9
|
+
The **tidy-tree** layout arranges nodes in a hierarchical, tree-like structure. It is especially useful for diagrams where parent-child relationships are important, such as mindmaps.
|
|
10
|
+
|
|
11
|
+
## Features
|
|
12
|
+
|
|
13
|
+
- Organizes nodes in a tidy, non-overlapping tree
|
|
14
|
+
- Ideal for mindmaps and hierarchical data
|
|
15
|
+
- Automatically adjusts spacing for readability
|
|
16
|
+
|
|
17
|
+
## Example Usage
|
|
18
|
+
|
|
19
|
+
```mermaid-example
|
|
20
|
+
---
|
|
21
|
+
config:
|
|
22
|
+
layout: tidy-tree
|
|
23
|
+
---
|
|
24
|
+
mindmap
|
|
25
|
+
root((mindmap is a long thing))
|
|
26
|
+
A
|
|
27
|
+
B
|
|
28
|
+
C
|
|
29
|
+
D
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
```mermaid
|
|
33
|
+
---
|
|
34
|
+
config:
|
|
35
|
+
layout: tidy-tree
|
|
36
|
+
---
|
|
37
|
+
mindmap
|
|
38
|
+
root((mindmap is a long thing))
|
|
39
|
+
A
|
|
40
|
+
B
|
|
41
|
+
C
|
|
42
|
+
D
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
```mermaid-example
|
|
46
|
+
---
|
|
47
|
+
config:
|
|
48
|
+
layout: tidy-tree
|
|
49
|
+
---
|
|
50
|
+
mindmap
|
|
51
|
+
root((mindmap))
|
|
52
|
+
Origins
|
|
53
|
+
Long history
|
|
54
|
+
::icon(fa fa-book)
|
|
55
|
+
Popularisation
|
|
56
|
+
British popular psychology author Tony Buzan
|
|
57
|
+
Research
|
|
58
|
+
On effectiveness<br/>and features
|
|
59
|
+
On Automatic creation
|
|
60
|
+
Uses
|
|
61
|
+
Creative techniques
|
|
62
|
+
Strategic planning
|
|
63
|
+
Argument mapping
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
```mermaid
|
|
67
|
+
---
|
|
68
|
+
config:
|
|
69
|
+
layout: tidy-tree
|
|
70
|
+
---
|
|
71
|
+
mindmap
|
|
72
|
+
root((mindmap))
|
|
73
|
+
Origins
|
|
74
|
+
Long history
|
|
75
|
+
::icon(fa fa-book)
|
|
76
|
+
Popularisation
|
|
77
|
+
British popular psychology author Tony Buzan
|
|
78
|
+
Research
|
|
79
|
+
On effectiveness<br/>and features
|
|
80
|
+
On Automatic creation
|
|
81
|
+
Uses
|
|
82
|
+
Creative techniques
|
|
83
|
+
Strategic planning
|
|
84
|
+
Argument mapping
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Note
|
|
88
|
+
|
|
89
|
+
- Currently, tidy-tree is primarily supported for mindmap diagrams.
|
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
> **Warning**
|
|
2
|
+
>
|
|
3
|
+
> ## THIS IS AN AUTOGENERATED FILE. DO NOT EDIT.
|
|
4
|
+
>
|
|
5
|
+
> ## Please edit the corresponding file in [/packages/mermaid/src/docs/syntax/cynefin.md](../../packages/mermaid/src/docs/syntax/cynefin.md).
|
|
6
|
+
|
|
7
|
+
# Cynefin Framework Diagram (v\<MERMAID_RELEASE_VERSION>+)
|
|
8
|
+
|
|
9
|
+
> The Cynefin framework is a sense-making framework created by [Dave Snowden](https://en.wikipedia.org/wiki/Dave_Snowden) that categorizes problems into five complexity domains. It helps teams match their response to the nature of the situation they are facing. The name is Welsh for "place" or "habitat".
|
|
10
|
+
|
|
11
|
+
You can read more at [The Cynefin Co](https://thecynefin.co/about-us/about-cynefin-framework).
|
|
12
|
+
|
|
13
|
+
## Introduction
|
|
14
|
+
|
|
15
|
+
The Cynefin framework divides the world into five domains, each with its own decision-making approach:
|
|
16
|
+
|
|
17
|
+
- **Clear** (formerly Obvious/Simple): Cause and effect are obvious. Sense → Categorise → Respond. Apply **best practices**.
|
|
18
|
+
- **Complicated**: Cause and effect require analysis or expertise. Sense → Analyse → Respond. Apply **good practices**.
|
|
19
|
+
- **Complex**: Cause and effect can only be deduced in retrospect. Probe → Sense → Respond. Apply **emergent practices**.
|
|
20
|
+
- **Chaotic**: No perceivable cause and effect. Act → Sense → Respond. Apply **novel practices**.
|
|
21
|
+
- **Confusion** (or Disorder): You do not know which domain you are in. The goal is to move items out of this state into one of the other four.
|
|
22
|
+
|
|
23
|
+
The signature visual feature is the wavy, organic boundary between the ordered (Clear, Complicated) and unordered (Complex, Chaotic) halves, and the "cliff" between Clear and Chaotic representing the risk of complacency leading to crisis.
|
|
24
|
+
|
|
25
|
+
## Syntax
|
|
26
|
+
|
|
27
|
+
A Cynefin diagram is declared with `cynefin-beta` followed by domain blocks and optional transitions.
|
|
28
|
+
|
|
29
|
+
```md
|
|
30
|
+
cynefin-beta
|
|
31
|
+
title Optional Diagram Title
|
|
32
|
+
|
|
33
|
+
complex
|
|
34
|
+
"Item label"
|
|
35
|
+
"Another item"
|
|
36
|
+
|
|
37
|
+
complicated
|
|
38
|
+
"Expert analysis needed"
|
|
39
|
+
|
|
40
|
+
clear
|
|
41
|
+
"Known procedure"
|
|
42
|
+
|
|
43
|
+
chaotic
|
|
44
|
+
"Crisis response"
|
|
45
|
+
|
|
46
|
+
confusion
|
|
47
|
+
"Item of unknown domain"
|
|
48
|
+
|
|
49
|
+
complex --> complicated : "Pattern identified"
|
|
50
|
+
clear --> chaotic : "Complacency"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Keywords
|
|
54
|
+
|
|
55
|
+
| Keyword | Meaning |
|
|
56
|
+
| -------------- | ---------------------------------------------------------------------- |
|
|
57
|
+
| `cynefin-beta` | Diagram type declaration (required, first line after any front matter) |
|
|
58
|
+
| `title` | Optional diagram title |
|
|
59
|
+
| `complex` | Opens the Complex domain block |
|
|
60
|
+
| `complicated` | Opens the Complicated domain block |
|
|
61
|
+
| `clear` | Opens the Clear domain block |
|
|
62
|
+
| `chaotic` | Opens the Chaotic domain block |
|
|
63
|
+
| `confusion` | Opens the Confusion / Disorder domain block |
|
|
64
|
+
| `-->` | Declares a transition from one domain to another |
|
|
65
|
+
|
|
66
|
+
### Items
|
|
67
|
+
|
|
68
|
+
Items are quoted string labels placed on their own lines inside a domain block. Each item renders as a text badge within the domain region.
|
|
69
|
+
|
|
70
|
+
```
|
|
71
|
+
complex
|
|
72
|
+
"Investigate root cause"
|
|
73
|
+
"Run chaos experiment"
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Keep per-domain item lists short — the quadrants have fixed layout and long lists can visually overflow their boxes. The confusion ellipse caps at three items and shows a `+N more` badge; the four quadrant domains do not clip, so prefer a handful of items each.
|
|
77
|
+
|
|
78
|
+
### Transitions
|
|
79
|
+
|
|
80
|
+
Transitions represent movement of items between domains over time. They are declared at the top level using `-->` between two domain names, with an optional label.
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
complex --> complicated : "Pattern identified"
|
|
84
|
+
clear --> chaotic : "Complacency"
|
|
85
|
+
chaotic --> complex : "Stabilized"
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Common transitions:
|
|
89
|
+
|
|
90
|
+
- **Complex → Complicated**: An emerging pattern has become understood and can now be analyzed.
|
|
91
|
+
- **Chaotic → Complex**: A crisis has been stabilized enough to begin probing.
|
|
92
|
+
- **Clear → Chaotic**: Complacency or over-constraint has led to collapse (the "cliff").
|
|
93
|
+
- **Complicated → Clear**: Analysis has codified a solution into a standard practice.
|
|
94
|
+
|
|
95
|
+
## Examples
|
|
96
|
+
|
|
97
|
+
### Basic example
|
|
98
|
+
|
|
99
|
+
```mermaid-example
|
|
100
|
+
cynefin-beta
|
|
101
|
+
title Incident Response
|
|
102
|
+
|
|
103
|
+
complex
|
|
104
|
+
"Investigate root cause"
|
|
105
|
+
"Run chaos experiment"
|
|
106
|
+
|
|
107
|
+
complicated
|
|
108
|
+
"Analyze performance data"
|
|
109
|
+
"Expert review needed"
|
|
110
|
+
|
|
111
|
+
clear
|
|
112
|
+
"Restart service"
|
|
113
|
+
"Apply known fix"
|
|
114
|
+
|
|
115
|
+
chaotic
|
|
116
|
+
"Page on-call immediately"
|
|
117
|
+
|
|
118
|
+
confusion
|
|
119
|
+
"Unknown failure mode"
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
```mermaid
|
|
123
|
+
cynefin-beta
|
|
124
|
+
title Incident Response
|
|
125
|
+
|
|
126
|
+
complex
|
|
127
|
+
"Investigate root cause"
|
|
128
|
+
"Run chaos experiment"
|
|
129
|
+
|
|
130
|
+
complicated
|
|
131
|
+
"Analyze performance data"
|
|
132
|
+
"Expert review needed"
|
|
133
|
+
|
|
134
|
+
clear
|
|
135
|
+
"Restart service"
|
|
136
|
+
"Apply known fix"
|
|
137
|
+
|
|
138
|
+
chaotic
|
|
139
|
+
"Page on-call immediately"
|
|
140
|
+
|
|
141
|
+
confusion
|
|
142
|
+
"Unknown failure mode"
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### With transitions
|
|
146
|
+
|
|
147
|
+
```mermaid-example
|
|
148
|
+
cynefin-beta
|
|
149
|
+
title Strategy Categorization
|
|
150
|
+
|
|
151
|
+
complex
|
|
152
|
+
"Market research"
|
|
153
|
+
|
|
154
|
+
complicated
|
|
155
|
+
"Competitive analysis"
|
|
156
|
+
|
|
157
|
+
clear
|
|
158
|
+
"Standard pricing"
|
|
159
|
+
|
|
160
|
+
chaotic
|
|
161
|
+
"Crisis management"
|
|
162
|
+
|
|
163
|
+
complex --> complicated : "Pattern identified"
|
|
164
|
+
complicated --> clear : "Best practice codified"
|
|
165
|
+
clear --> chaotic : "Complacency"
|
|
166
|
+
chaotic --> complex : "Stabilized"
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
```mermaid
|
|
170
|
+
cynefin-beta
|
|
171
|
+
title Strategy Categorization
|
|
172
|
+
|
|
173
|
+
complex
|
|
174
|
+
"Market research"
|
|
175
|
+
|
|
176
|
+
complicated
|
|
177
|
+
"Competitive analysis"
|
|
178
|
+
|
|
179
|
+
clear
|
|
180
|
+
"Standard pricing"
|
|
181
|
+
|
|
182
|
+
chaotic
|
|
183
|
+
"Crisis management"
|
|
184
|
+
|
|
185
|
+
complex --> complicated : "Pattern identified"
|
|
186
|
+
complicated --> clear : "Best practice codified"
|
|
187
|
+
clear --> chaotic : "Complacency"
|
|
188
|
+
chaotic --> complex : "Stabilized"
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
### Empty framework
|
|
192
|
+
|
|
193
|
+
The domains themselves render even with no items, useful as a teaching or worksheet template.
|
|
194
|
+
|
|
195
|
+
```mermaid-example
|
|
196
|
+
cynefin-beta
|
|
197
|
+
title Cynefin Framework
|
|
198
|
+
|
|
199
|
+
complex
|
|
200
|
+
complicated
|
|
201
|
+
clear
|
|
202
|
+
chaotic
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
```mermaid
|
|
206
|
+
cynefin-beta
|
|
207
|
+
title Cynefin Framework
|
|
208
|
+
|
|
209
|
+
complex
|
|
210
|
+
complicated
|
|
211
|
+
clear
|
|
212
|
+
chaotic
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
## Configuration
|
|
216
|
+
|
|
217
|
+
Cynefin diagrams accept the following configuration under the `cynefin` key in the mermaid config:
|
|
218
|
+
|
|
219
|
+
| Option | Type | Default | Description |
|
|
220
|
+
| ------------------------ | ------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
221
|
+
| `width` | number | `800` | Width of the diagram in pixels |
|
|
222
|
+
| `height` | number | `600` | Height of the diagram in pixels |
|
|
223
|
+
| `padding` | number | `40` | Padding around the diagram |
|
|
224
|
+
| `showDomainDescriptions` | boolean | `true` | Show decision model and practice type subtitles per domain |
|
|
225
|
+
| `boundaryAmplitude` | number | `8` | Waviness amplitude of domain boundaries in pixels (set to `0` for straight lines) |
|
|
226
|
+
| `seed` | number | `0` | Deterministic seed for boundary waviness. `0` (default) hashes the diagram's SVG id so each diagram looks unique. Set any non-zero number to lock the waviness across renders — required for stable visual regression tests. |
|
|
227
|
+
|
|
228
|
+
Example:
|
|
229
|
+
|
|
230
|
+
```
|
|
231
|
+
%%{init: {'cynefin': {'width': 1000, 'showDomainDescriptions': false}}}%%
|
|
232
|
+
cynefin-beta
|
|
233
|
+
complex
|
|
234
|
+
"Adaptive work"
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
## Theming
|
|
238
|
+
|
|
239
|
+
Cynefin diagrams use the following theme variables, which can be overridden via `themeVariables.cynefin`:
|
|
240
|
+
|
|
241
|
+
| Variable | Description |
|
|
242
|
+
| ---------------- | ------------------------------------------------ |
|
|
243
|
+
| `complexBg` | Background color for the Complex domain |
|
|
244
|
+
| `complicatedBg` | Background color for the Complicated domain |
|
|
245
|
+
| `clearBg` | Background color for the Clear domain |
|
|
246
|
+
| `chaoticBg` | Background color for the Chaotic domain |
|
|
247
|
+
| `confusionBg` | Background color for the Confusion center region |
|
|
248
|
+
| `boundaryColor` | Color of the wavy domain boundaries |
|
|
249
|
+
| `boundaryWidth` | Stroke width of the boundaries |
|
|
250
|
+
| `cliffColor` | Color of the Clear/Chaotic cliff |
|
|
251
|
+
| `cliffWidth` | Stroke width of the cliff |
|
|
252
|
+
| `arrowColor` | Color of transition arrows |
|
|
253
|
+
| `arrowWidth` | Stroke width of transition arrows |
|
|
254
|
+
| `labelColor` | Color of domain name labels |
|
|
255
|
+
| `textColor` | Color of item and subtitle text |
|
|
256
|
+
| `domainFontSize` | Font size of domain name labels |
|
|
257
|
+
| `itemFontSize` | Font size of item badges and subtitles |
|
|
258
|
+
|
|
259
|
+
## Notes
|
|
260
|
+
|
|
261
|
+
- Domain names are fixed keywords. Only `complex`, `complicated`, `clear`, `chaotic`, and `confusion` are recognized.
|
|
262
|
+
- Domains can be declared in any order; their position in the diagram is always the same (Complex top-left, Complicated top-right, Chaotic bottom-left, Clear bottom-right, Confusion center).
|
|
263
|
+
- The `confusion` domain has a compact center ellipse. Up to 3 items are shown inside it; if more are provided a `+N more` overflow badge is displayed. In practice, the confusion domain should contain very few items — its purpose is to surface unknowns so they can be moved to one of the four main domains.
|
|
264
|
+
- Self-loop transitions (e.g. `complex --> complex`) are silently ignored. Transitions must connect two different domains.
|
|
265
|
+
- Handdrawn mode is not currently supported.
|
|
266
|
+
- The wavy boundary rendering is deterministic: the same input always produces the same diagram, so diffs are stable across builds.
|
|
267
|
+
|
|
268
|
+
## Accessibility
|
|
269
|
+
|
|
270
|
+
Cynefin diagrams support the standard mermaid accessibility directives:
|
|
271
|
+
|
|
272
|
+
```
|
|
273
|
+
cynefin-beta
|
|
274
|
+
accTitle: Cynefin framework for software delivery decisions
|
|
275
|
+
accDescr: A Cynefin map categorizing software tasks by complexity domain
|
|
276
|
+
|
|
277
|
+
complex
|
|
278
|
+
"New feature discovery"
|
|
279
|
+
```
|