sirena 0.1.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.
- checksums.yaml +7 -0
- data/.github/workflows/build_deploy.yml +59 -0
- data/.github/workflows/links.yml +85 -0
- data/.github/workflows/rake.yml +15 -0
- data/.github/workflows/release.yml +27 -0
- data/.gitignore +68 -0
- data/.rspec +3 -0
- data/.rubocop.yml +14 -0
- data/.rubocop_todo.yml +70 -0
- data/ARCHITECTURE.md +744 -0
- data/Gemfile +12 -0
- data/LICENSE +25 -0
- data/README.adoc +357 -0
- data/Rakefile +11 -0
- data/docs/.gitignore +1 -0
- data/docs/Gemfile +13 -0
- data/docs/_config.yml +182 -0
- data/docs/_diagram_types/architecture-diagram.adoc +314 -0
- data/docs/_diagram_types/block-diagram.adoc +345 -0
- data/docs/_diagram_types/c4-diagram.adoc +559 -0
- data/docs/_diagram_types/class-diagram.adoc +816 -0
- data/docs/_diagram_types/er-diagram.adoc +719 -0
- data/docs/_diagram_types/error-diagram.adoc +114 -0
- data/docs/_diagram_types/examples/flowchart-examples.adoc +29 -0
- data/docs/_diagram_types/flowchart.adoc +488 -0
- data/docs/_diagram_types/gantt-chart.adoc +502 -0
- data/docs/_diagram_types/git-graph.adoc +600 -0
- data/docs/_diagram_types/index.adoc +192 -0
- data/docs/_diagram_types/info-diagram.adoc +103 -0
- data/docs/_diagram_types/kanban-diagram.adoc +262 -0
- data/docs/_diagram_types/mindmap.adoc +603 -0
- data/docs/_diagram_types/packet-diagram.adoc +378 -0
- data/docs/_diagram_types/pie-chart.adoc +335 -0
- data/docs/_diagram_types/quadrant-chart.adoc +406 -0
- data/docs/_diagram_types/radar-chart.adoc +528 -0
- data/docs/_diagram_types/requirement-diagram.adoc +416 -0
- data/docs/_diagram_types/sankey-diagram.adoc +357 -0
- data/docs/_diagram_types/sequence-diagram.adoc +664 -0
- data/docs/_diagram_types/state-diagram.adoc +658 -0
- data/docs/_diagram_types/timeline.adoc +352 -0
- data/docs/_diagram_types/treemap-diagram.adoc +462 -0
- data/docs/_diagram_types/user-journey.adoc +602 -0
- data/docs/_features/index.adoc +129 -0
- data/docs/_guides/cli-reference.adoc +203 -0
- data/docs/_guides/index.adoc +56 -0
- data/docs/_guides/installation.adoc +100 -0
- data/docs/_guides/quick-start.adoc +132 -0
- data/docs/_pages/comparison.adoc +441 -0
- data/docs/_pages/compatibility.adoc +300 -0
- data/docs/_pages/index.adoc +39 -0
- data/docs/_references/index.adoc +103 -0
- data/docs/_tutorials/index.adoc +57 -0
- data/docs/index.adoc +166 -0
- data/docs/lychee.toml +54 -0
- data/examples/.gitignore +10 -0
- data/examples/README.adoc +196 -0
- data/examples/README.md +64 -0
- data/examples/architecture/01-basic-services.mmd +9 -0
- data/examples/architecture/01-basic-services.svg +37 -0
- data/examples/architecture/02-service-groups.mmd +16 -0
- data/examples/architecture/02-service-groups.svg +55 -0
- data/examples/architecture/README.adoc +79 -0
- data/examples/block/01-basic-blocks.mmd +13 -0
- data/examples/block/01-basic-blocks.svg +44 -0
- data/examples/block/02-block-shapes.mmd +13 -0
- data/examples/block/02-block-shapes.svg +47 -0
- data/examples/block/README.adoc +85 -0
- data/examples/c4/01-context-diagram.mmd +10 -0
- data/examples/c4/01-context-diagram.svg +45 -0
- data/examples/c4/02-container-diagram.mmd +24 -0
- data/examples/c4/02-container-diagram.svg +105 -0
- data/examples/c4/README.adoc +92 -0
- data/examples/class_diagram/01-basic-classes.mmd +61 -0
- data/examples/class_diagram/01-basic-classes.svg +117 -0
- data/examples/class_diagram/02-relationships.mmd +61 -0
- data/examples/class_diagram/02-relationships.svg +129 -0
- data/examples/class_diagram/README.adoc +93 -0
- data/examples/er_diagram/01-basic-entities.mmd +64 -0
- data/examples/er_diagram/01-basic-entities.svg +5 -0
- data/examples/er_diagram/02-cardinality.mmd +57 -0
- data/examples/er_diagram/02-cardinality.svg +125 -0
- data/examples/er_diagram/README.adoc +88 -0
- data/examples/error/01-basic-error.mmd +1 -0
- data/examples/error/01-basic-error.svg +13 -0
- data/examples/error/02-error-display.mmd +1 -0
- data/examples/error/02-error-display.svg +13 -0
- data/examples/error/README.adoc +71 -0
- data/examples/error_message_example.svg +13 -0
- data/examples/flowchart/00-original.mmd +13 -0
- data/examples/flowchart/00-original.svg +5 -0
- data/examples/flowchart/01-basic-flow.mmd +7 -0
- data/examples/flowchart/01-basic-flow.svg +52 -0
- data/examples/flowchart/01-basic-flow.yml +13 -0
- data/examples/flowchart/02*.svg +87 -0
- data/examples/flowchart/02-node-shapes.mmd +9 -0
- data/examples/flowchart/02-node-shapes.svg +33 -0
- data/examples/flowchart/03-edge-types.mmd +7 -0
- data/examples/flowchart/03-edge-types.svg +53 -0
- data/examples/flowchart/04-subgraphs.mmd +9 -0
- data/examples/flowchart/04-subgraphs.svg +33 -0
- data/examples/flowchart/05-styling.mmd +9 -0
- data/examples/flowchart/05-styling.svg +33 -0
- data/examples/flowchart/06-complex-flow.mmd +8 -0
- data/examples/flowchart/06-complex-flow.svg +59 -0
- data/examples/flowchart/README.adoc +167 -0
- data/examples/gantt/01-simple-timeline.* +14 -0
- data/examples/gantt/01-simple-timeline.mmd +6 -0
- data/examples/gantt/01-simple-timeline.svg +26 -0
- data/examples/gantt/02-task-dependencies.mmd +6 -0
- data/examples/gantt/02-task-dependencies.svg +26 -0
- data/examples/gantt/README.adoc +86 -0
- data/examples/git_graph/01-linear-history.mmd +12 -0
- data/examples/git_graph/01-linear-history.svg +26 -0
- data/examples/git_graph/02-branching.mmd +12 -0
- data/examples/git_graph/02-branching.svg +26 -0
- data/examples/git_graph/README.adoc +73 -0
- data/examples/info/02-showinfo.mmd +1 -0
- data/examples/info/02-showinfo.svg +10 -0
- data/examples/info/README.adoc +58 -0
- data/examples/info_showinfo_example.svg +10 -0
- data/examples/kanban/01-simple-board.mmd +8 -0
- data/examples/kanban/01-simple-board.svg +43 -0
- data/examples/kanban/02-workflow.mmd +8 -0
- data/examples/kanban/02-workflow.svg +43 -0
- data/examples/kanban/README.adoc +79 -0
- data/examples/mindmap/01-simple-tree.mmd +19 -0
- data/examples/mindmap/01-simple-tree.svg +61 -0
- data/examples/mindmap/02-knowledge-map.mmd +19 -0
- data/examples/mindmap/02-knowledge-map.svg +61 -0
- data/examples/mindmap/README.adoc +77 -0
- data/examples/packet/01-basic-packet.* +17 -0
- data/examples/packet/01-basic-packet.mmd +4 -0
- data/examples/packet/01-basic-packet.svg +82 -0
- data/examples/packet/README.adoc +58 -0
- data/examples/pie/01-simple-chart.mmd +5 -0
- data/examples/pie/01-simple-chart.svg +17 -0
- data/examples/pie/02-labeled-slices.mmd +6 -0
- data/examples/pie/02-labeled-slices.svg +19 -0
- data/examples/pie/README.adoc +75 -0
- data/examples/quadrant/01-basic-quadrant.mmd +13 -0
- data/examples/quadrant/01-basic-quadrant.svg +33 -0
- data/examples/quadrant/02-positioned-items.mmd +14 -0
- data/examples/quadrant/02-positioned-items.svg +35 -0
- data/examples/quadrant/README.adoc +84 -0
- data/examples/radar/01-simple-radar.* +5 -0
- data/examples/radar/01-simple-radar.mmd +3 -0
- data/examples/radar/01-simple-radar.svg +25 -0
- data/examples/radar/02-multiple-curves.mmd +4 -0
- data/examples/radar/02-multiple-curves.svg +43 -0
- data/examples/radar/README.adoc +75 -0
- data/examples/requirement/01-basic-requirements.mmd +23 -0
- data/examples/requirement/01-basic-requirements.svg +49 -0
- data/examples/requirement/02-risk-levels.mmd +23 -0
- data/examples/requirement/02-risk-levels.svg +49 -0
- data/examples/requirement/README.adoc +85 -0
- data/examples/sankey/01-simple-flow.mmd +7 -0
- data/examples/sankey/01-simple-flow.svg +34 -0
- data/examples/sankey/02-multi-stage.mmd +11 -0
- data/examples/sankey/02-multi-stage.svg +44 -0
- data/examples/sankey/README.adoc +74 -0
- data/examples/sequence/01-basic-sequence.mmd +27 -0
- data/examples/sequence/01-basic-sequence.svg +5 -0
- data/examples/sequence/02-activations.mmd +17 -0
- data/examples/sequence/02-activations.svg +78 -0
- data/examples/sequence/README.adoc +86 -0
- data/examples/state_diagram/01-simple-states.mmd +29 -0
- data/examples/state_diagram/01-simple-states.svg +5 -0
- data/examples/state_diagram/02-composite.mmd +19 -0
- data/examples/state_diagram/02-composite.svg +81 -0
- data/examples/state_diagram/README.adoc +90 -0
- data/examples/timeline/01-simple-timeline.mmd +11 -0
- data/examples/timeline/01-simple-timeline.svg +36 -0
- data/examples/timeline/02-periods.mmd +15 -0
- data/examples/timeline/02-periods.svg +47 -0
- data/examples/timeline/README.adoc +78 -0
- data/examples/treemap/01-basic-treemap.mmd +12 -0
- data/examples/treemap/01-basic-treemap.svg +59 -0
- data/examples/treemap/README.adoc +59 -0
- data/examples/user_journey/01-simple-journey.mmd +23 -0
- data/examples/user_journey/01-simple-journey.svg +5 -0
- data/examples/user_journey/02-multi-actor.mmd +18 -0
- data/examples/user_journey/02-multi-actor.svg +129 -0
- data/examples/user_journey/README.adoc +81 -0
- data/examples/xychart/01-line-chart.mmd +5 -0
- data/examples/xychart/01-line-chart.svg +43 -0
- data/examples/xychart/02-bar-chart.mmd +7 -0
- data/examples/xychart/02-bar-chart.svg +48 -0
- data/examples/xychart/README.adoc +80 -0
- data/exe/sirena +7 -0
- data/lib/sirena/cli.rb +138 -0
- data/lib/sirena/commands/batch.rb +117 -0
- data/lib/sirena/commands/render.rb +80 -0
- data/lib/sirena/commands/types.rb +29 -0
- data/lib/sirena/commands/version.rb +24 -0
- data/lib/sirena/diagram/architecture.rb +46 -0
- data/lib/sirena/diagram/base.rb +61 -0
- data/lib/sirena/diagram/block.rb +81 -0
- data/lib/sirena/diagram/c4.rb +328 -0
- data/lib/sirena/diagram/class_diagram.rb +385 -0
- data/lib/sirena/diagram/er_diagram.rb +238 -0
- data/lib/sirena/diagram/error.rb +38 -0
- data/lib/sirena/diagram/flowchart.rb +160 -0
- data/lib/sirena/diagram/gantt.rb +71 -0
- data/lib/sirena/diagram/git_graph.rb +36 -0
- data/lib/sirena/diagram/info.rb +38 -0
- data/lib/sirena/diagram/kanban.rb +178 -0
- data/lib/sirena/diagram/mindmap.rb +54 -0
- data/lib/sirena/diagram/packet.rb +79 -0
- data/lib/sirena/diagram/pie.rb +115 -0
- data/lib/sirena/diagram/quadrant.rb +138 -0
- data/lib/sirena/diagram/radar.rb +52 -0
- data/lib/sirena/diagram/requirement.rb +133 -0
- data/lib/sirena/diagram/sankey.rb +217 -0
- data/lib/sirena/diagram/sequence.rb +242 -0
- data/lib/sirena/diagram/state_diagram.rb +237 -0
- data/lib/sirena/diagram/timeline.rb +171 -0
- data/lib/sirena/diagram/treemap.rb +84 -0
- data/lib/sirena/diagram/user_journey.rb +149 -0
- data/lib/sirena/diagram/xy_chart.rb +76 -0
- data/lib/sirena/diagram.rb +8 -0
- data/lib/sirena/diagram_registry.rb +101 -0
- data/lib/sirena/engine.rb +292 -0
- data/lib/sirena/parser/architecture.rb +41 -0
- data/lib/sirena/parser/base.rb +41 -0
- data/lib/sirena/parser/block.rb +72 -0
- data/lib/sirena/parser/c4.rb +53 -0
- data/lib/sirena/parser/class_diagram.rb +63 -0
- data/lib/sirena/parser/er_diagram.rb +40 -0
- data/lib/sirena/parser/error.rb +49 -0
- data/lib/sirena/parser/flowchart.rb +71 -0
- data/lib/sirena/parser/gantt.rb +60 -0
- data/lib/sirena/parser/git_graph.rb +95 -0
- data/lib/sirena/parser/grammars/architecture.rb +145 -0
- data/lib/sirena/parser/grammars/block.rb +190 -0
- data/lib/sirena/parser/grammars/c4.rb +226 -0
- data/lib/sirena/parser/grammars/class_diagram.rb +284 -0
- data/lib/sirena/parser/grammars/common.rb +84 -0
- data/lib/sirena/parser/grammars/er_diagram.rb +114 -0
- data/lib/sirena/parser/grammars/error.rb +40 -0
- data/lib/sirena/parser/grammars/flowchart.rb +298 -0
- data/lib/sirena/parser/grammars/gantt.rb +252 -0
- data/lib/sirena/parser/grammars/git_graph.rb +167 -0
- data/lib/sirena/parser/grammars/info.rb +58 -0
- data/lib/sirena/parser/grammars/kanban.rb +83 -0
- data/lib/sirena/parser/grammars/mindmap.rb +115 -0
- data/lib/sirena/parser/grammars/packet.rb +73 -0
- data/lib/sirena/parser/grammars/pie.rb +128 -0
- data/lib/sirena/parser/grammars/quadrant.rb +199 -0
- data/lib/sirena/parser/grammars/radar.rb +150 -0
- data/lib/sirena/parser/grammars/requirement.rb +188 -0
- data/lib/sirena/parser/grammars/sankey.rb +104 -0
- data/lib/sirena/parser/grammars/sequence.rb +247 -0
- data/lib/sirena/parser/grammars/state_diagram.rb +172 -0
- data/lib/sirena/parser/grammars/timeline.rb +142 -0
- data/lib/sirena/parser/grammars/treemap.rb +120 -0
- data/lib/sirena/parser/grammars/xy_chart.rb +120 -0
- data/lib/sirena/parser/info.rb +49 -0
- data/lib/sirena/parser/kanban.rb +97 -0
- data/lib/sirena/parser/mindmap.rb +106 -0
- data/lib/sirena/parser/packet.rb +76 -0
- data/lib/sirena/parser/pie.rb +49 -0
- data/lib/sirena/parser/quadrant.rb +57 -0
- data/lib/sirena/parser/radar.rb +104 -0
- data/lib/sirena/parser/requirement.rb +70 -0
- data/lib/sirena/parser/sankey.rb +64 -0
- data/lib/sirena/parser/sequence.rb +51 -0
- data/lib/sirena/parser/state_diagram.rb +69 -0
- data/lib/sirena/parser/timeline.rb +57 -0
- data/lib/sirena/parser/transforms/architecture.rb +97 -0
- data/lib/sirena/parser/transforms/block.rb +254 -0
- data/lib/sirena/parser/transforms/c4.rb +347 -0
- data/lib/sirena/parser/transforms/class_diagram.rb +352 -0
- data/lib/sirena/parser/transforms/er_diagram.rb +169 -0
- data/lib/sirena/parser/transforms/error.rb +58 -0
- data/lib/sirena/parser/transforms/flowchart.rb +293 -0
- data/lib/sirena/parser/transforms/gantt.rb +215 -0
- data/lib/sirena/parser/transforms/git_graph.rb +160 -0
- data/lib/sirena/parser/transforms/info.rb +58 -0
- data/lib/sirena/parser/transforms/kanban.rb +176 -0
- data/lib/sirena/parser/transforms/mindmap.rb +227 -0
- data/lib/sirena/parser/transforms/packet.rb +63 -0
- data/lib/sirena/parser/transforms/pie.rb +143 -0
- data/lib/sirena/parser/transforms/quadrant.rb +177 -0
- data/lib/sirena/parser/transforms/radar.rb +126 -0
- data/lib/sirena/parser/transforms/requirement.rb +272 -0
- data/lib/sirena/parser/transforms/sankey.rb +122 -0
- data/lib/sirena/parser/transforms/sequence.rb +342 -0
- data/lib/sirena/parser/transforms/state_diagram.rb +292 -0
- data/lib/sirena/parser/transforms/timeline.rb +177 -0
- data/lib/sirena/parser/transforms/treemap.rb +81 -0
- data/lib/sirena/parser/transforms/xy_chart.rb +132 -0
- data/lib/sirena/parser/treemap.rb +98 -0
- data/lib/sirena/parser/user_journey.rb +120 -0
- data/lib/sirena/parser/xy_chart.rb +114 -0
- data/lib/sirena/parser.rb +8 -0
- data/lib/sirena/renderer/architecture.rb +251 -0
- data/lib/sirena/renderer/base.rb +251 -0
- data/lib/sirena/renderer/block.rb +286 -0
- data/lib/sirena/renderer/c4.rb +490 -0
- data/lib/sirena/renderer/class_diagram.rb +499 -0
- data/lib/sirena/renderer/er_diagram.rb +417 -0
- data/lib/sirena/renderer/error.rb +131 -0
- data/lib/sirena/renderer/flowchart.rb +301 -0
- data/lib/sirena/renderer/gantt.rb +331 -0
- data/lib/sirena/renderer/git_graph.rb +368 -0
- data/lib/sirena/renderer/info.rb +93 -0
- data/lib/sirena/renderer/kanban.rb +295 -0
- data/lib/sirena/renderer/mindmap.rb +396 -0
- data/lib/sirena/renderer/packet.rb +239 -0
- data/lib/sirena/renderer/pie.rb +235 -0
- data/lib/sirena/renderer/quadrant.rb +292 -0
- data/lib/sirena/renderer/radar.rb +323 -0
- data/lib/sirena/renderer/requirement.rb +371 -0
- data/lib/sirena/renderer/sankey.rb +255 -0
- data/lib/sirena/renderer/sequence.rb +424 -0
- data/lib/sirena/renderer/state_diagram.rb +328 -0
- data/lib/sirena/renderer/timeline.rb +304 -0
- data/lib/sirena/renderer/treemap.rb +152 -0
- data/lib/sirena/renderer/user_journey.rb +331 -0
- data/lib/sirena/renderer/xy_chart.rb +452 -0
- data/lib/sirena/renderer.rb +8 -0
- data/lib/sirena/svg/circle.rb +41 -0
- data/lib/sirena/svg/document.rb +103 -0
- data/lib/sirena/svg/element.rb +65 -0
- data/lib/sirena/svg/ellipse.rb +33 -0
- data/lib/sirena/svg/group.rb +71 -0
- data/lib/sirena/svg/line.rb +49 -0
- data/lib/sirena/svg/path.rb +76 -0
- data/lib/sirena/svg/polygon.rb +43 -0
- data/lib/sirena/svg/polyline.rb +35 -0
- data/lib/sirena/svg/rect.rb +57 -0
- data/lib/sirena/svg/style.rb +44 -0
- data/lib/sirena/svg/text.rb +72 -0
- data/lib/sirena/svg.rb +19 -0
- data/lib/sirena/text_measurement.rb +71 -0
- data/lib/sirena/theme/builtin/dark.yml +70 -0
- data/lib/sirena/theme/builtin/default.yml +80 -0
- data/lib/sirena/theme/builtin/high_contrast.yml +70 -0
- data/lib/sirena/theme/builtin/light.yml +70 -0
- data/lib/sirena/theme/color_palette.rb +48 -0
- data/lib/sirena/theme/effect_styles.rb +28 -0
- data/lib/sirena/theme/registry.rb +41 -0
- data/lib/sirena/theme/shape_styles.rb +28 -0
- data/lib/sirena/theme/spacing_config.rb +24 -0
- data/lib/sirena/theme/typography.rb +30 -0
- data/lib/sirena/theme.rb +69 -0
- data/lib/sirena/transform/architecture.rb +273 -0
- data/lib/sirena/transform/base.rb +199 -0
- data/lib/sirena/transform/block.rb +215 -0
- data/lib/sirena/transform/c4.rb +288 -0
- data/lib/sirena/transform/class_diagram.rb +296 -0
- data/lib/sirena/transform/er_diagram.rb +204 -0
- data/lib/sirena/transform/error.rb +39 -0
- data/lib/sirena/transform/flowchart.rb +161 -0
- data/lib/sirena/transform/gantt.rb +253 -0
- data/lib/sirena/transform/git_graph.rb +283 -0
- data/lib/sirena/transform/info.rb +39 -0
- data/lib/sirena/transform/kanban.rb +180 -0
- data/lib/sirena/transform/mindmap.rb +251 -0
- data/lib/sirena/transform/packet.rb +185 -0
- data/lib/sirena/transform/pie.rb +62 -0
- data/lib/sirena/transform/quadrant.rb +167 -0
- data/lib/sirena/transform/radar.rb +227 -0
- data/lib/sirena/transform/requirement.rb +233 -0
- data/lib/sirena/transform/sankey.rb +212 -0
- data/lib/sirena/transform/sequence.rb +143 -0
- data/lib/sirena/transform/state_diagram.rb +228 -0
- data/lib/sirena/transform/timeline.rb +139 -0
- data/lib/sirena/transform/treemap.rb +120 -0
- data/lib/sirena/transform/user_journey.rb +207 -0
- data/lib/sirena/transform/xy_chart.rb +273 -0
- data/lib/sirena/transform.rb +8 -0
- data/lib/sirena/version.rb +5 -0
- data/lib/sirena.rb +328 -0
- data/lib/tasks/benchmark.rake +532 -0
- data/lib/tasks/examples.rake +468 -0
- data/lib/tasks/generate_mermaid_fixtures.rake +363 -0
- data/lib/tasks/mermaid_fixtures.rake +46 -0
- data/scripts/extract_mermaid_tests.rb +493 -0
- data/scripts/rename_to_sirena.rb +73 -0
- data/sirena.gemspec +47 -0
- metadata +529 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
= State Diagram Examples
|
|
2
|
+
|
|
3
|
+
== Purpose
|
|
4
|
+
|
|
5
|
+
State diagrams visualize the behavior of a system by showing its states and the transitions between them. They are essential for modeling state machines, workflows, and system lifecycle management.
|
|
6
|
+
|
|
7
|
+
== When to Use
|
|
8
|
+
|
|
9
|
+
* System state machines and lifecycle management
|
|
10
|
+
* Connection and session state tracking
|
|
11
|
+
* User interface state flows
|
|
12
|
+
* Protocol state visualization
|
|
13
|
+
* Workflow and business process states
|
|
14
|
+
|
|
15
|
+
== Syntax Overview
|
|
16
|
+
|
|
17
|
+
[source,mermaid]
|
|
18
|
+
----
|
|
19
|
+
stateDiagram-v2
|
|
20
|
+
[*] --> Idle
|
|
21
|
+
|
|
22
|
+
Idle --> Active : start
|
|
23
|
+
Active --> Idle : stop
|
|
24
|
+
|
|
25
|
+
state Active {
|
|
26
|
+
[*] --> Processing
|
|
27
|
+
Processing --> Complete
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
Active --> [*]
|
|
31
|
+
----
|
|
32
|
+
|
|
33
|
+
**States**: Simple text labels or composite states with nested structure
|
|
34
|
+
|
|
35
|
+
**Transitions**: Arrows with optional labels showing triggers/conditions
|
|
36
|
+
|
|
37
|
+
**Special States**:
|
|
38
|
+
- `[*]` - Start/end state
|
|
39
|
+
- `state Name {...}` - Composite state with sub-states
|
|
40
|
+
- `state "Description" as Name` - State with description
|
|
41
|
+
|
|
42
|
+
**State Features**:
|
|
43
|
+
- Entry/exit actions
|
|
44
|
+
- Choice nodes
|
|
45
|
+
- Fork/join for parallel states
|
|
46
|
+
|
|
47
|
+
== Examples
|
|
48
|
+
|
|
49
|
+
=== 01: Simple States
|
|
50
|
+
|
|
51
|
+
Demonstrates a connection state machine with nested composite states, showing transitions, error handling, and complex state hierarchies.
|
|
52
|
+
|
|
53
|
+
**File**: link:01-simple-states.mmd[01-simple-states.mmd]
|
|
54
|
+
|
|
55
|
+
[source,mermaid]
|
|
56
|
+
----
|
|
57
|
+
include::01-simple-states.mmd[]
|
|
58
|
+
----
|
|
59
|
+
|
|
60
|
+
image::01-simple-states.svg[]
|
|
61
|
+
|
|
62
|
+
== Features Demonstrated
|
|
63
|
+
|
|
64
|
+
[%header,cols="1,1"]
|
|
65
|
+
|===
|
|
66
|
+
| Feature | Example
|
|
67
|
+
|
|
68
|
+
| Basic states and transitions
|
|
69
|
+
| 01
|
|
70
|
+
|
|
71
|
+
| Start and end states
|
|
72
|
+
| 01
|
|
73
|
+
|
|
74
|
+
| Transition labels
|
|
75
|
+
| 01
|
|
76
|
+
|
|
77
|
+
| Composite states
|
|
78
|
+
| 01
|
|
79
|
+
|
|
80
|
+
| Nested state hierarchies
|
|
81
|
+
| 01
|
|
82
|
+
|
|
83
|
+
| Multiple transition paths
|
|
84
|
+
| 01
|
|
85
|
+
|===
|
|
86
|
+
|
|
87
|
+
== Additional Resources
|
|
88
|
+
|
|
89
|
+
* link:../../README.adoc[Main Documentation]
|
|
90
|
+
* https://mermaid.js.org/syntax/stateDiagram.html[Mermaid State Diagram Documentation]
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
timeline
|
|
2
|
+
title History of Programming Languages
|
|
3
|
+
section Early Years
|
|
4
|
+
1957 : Fortran released
|
|
5
|
+
1972 : C language created
|
|
6
|
+
section Modern Era
|
|
7
|
+
1991 : Python released
|
|
8
|
+
1995 : Java and JavaScript released
|
|
9
|
+
section Contemporary
|
|
10
|
+
2009 : Go language released
|
|
11
|
+
2014 : Swift released
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
<svg
|
|
2
|
+
width="960.0"
|
|
3
|
+
height="440.0"
|
|
4
|
+
viewBox="0 0 960 440"
|
|
5
|
+
version="1.2"
|
|
6
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
7
|
+
>
|
|
8
|
+
<text fill="#000000" x="480.0" y="40.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="16.0" font-weight="bold">History of Programming Languages</text>
|
|
9
|
+
<text fill="#4472C4" x="80.0" y="100.0" font-family="Arial, Helvetica, sans-serif" font-size="14" font-weight="bold">Early Years</text>
|
|
10
|
+
<rect fill="#ffffff" stroke="none" x="80.0" y="140.0" width="800.0" height="6.0" rx="3.0" ry="3.0"/>
|
|
11
|
+
<circle fill="#4472C4" stroke="#000000" stroke-width="2" cx="149.56521739130434" cy="143.0" r="8.0"/>
|
|
12
|
+
<text fill="#000000" x="149.56521739130434" y="175.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">Fortran released</text>
|
|
13
|
+
<text fill="#000000" x="149.56521739130434" y="125.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">1957</text>
|
|
14
|
+
<circle fill="#4472C4" stroke="#000000" stroke-width="2" cx="323.47826086956525" cy="143.0" r="8.0"/>
|
|
15
|
+
<text fill="#000000" x="323.47826086956525" y="175.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">C language created</text>
|
|
16
|
+
<text fill="#000000" x="323.47826086956525" y="125.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">1972</text>
|
|
17
|
+
<text fill="#000000" x="80.0" y="166.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">1951</text>
|
|
18
|
+
<text fill="#000000" x="880.0" y="166.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">2020</text>
|
|
19
|
+
<text fill="#000000" x="480.0" y="166.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">1986</text>
|
|
20
|
+
<text fill="#ED7D31" x="80.0" y="160.0" font-family="Arial, Helvetica, sans-serif" font-size="14" font-weight="bold">Modern Era</text>
|
|
21
|
+
<rect fill="#ffffff" stroke="none" x="80.0" y="200.0" width="800.0" height="6.0" rx="3.0" ry="3.0"/>
|
|
22
|
+
<circle fill="#ED7D31" stroke="#000000" stroke-width="2" cx="543.768115942029" cy="203.0" r="8.0"/>
|
|
23
|
+
<text fill="#000000" x="543.768115942029" y="235.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">Python released</text>
|
|
24
|
+
<text fill="#000000" x="543.768115942029" y="185.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">1991</text>
|
|
25
|
+
<circle fill="#ED7D31" stroke="#000000" stroke-width="2" cx="590.1449275362318" cy="203.0" r="8.0"/>
|
|
26
|
+
<text fill="#000000" x="590.1449275362318" y="235.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">Java and JavaScript released</text>
|
|
27
|
+
<text fill="#000000" x="590.1449275362318" y="185.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">1995</text>
|
|
28
|
+
<text fill="#A5A5A5" x="80.0" y="220.0" font-family="Arial, Helvetica, sans-serif" font-size="14" font-weight="bold">Contemporary</text>
|
|
29
|
+
<rect fill="#ffffff" stroke="none" x="80.0" y="260.0" width="800.0" height="6.0" rx="3.0" ry="3.0"/>
|
|
30
|
+
<circle fill="#A5A5A5" stroke="#000000" stroke-width="2" cx="752.463768115942" cy="263.0" r="8.0"/>
|
|
31
|
+
<text fill="#000000" x="752.463768115942" y="295.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">Go language released</text>
|
|
32
|
+
<text fill="#000000" x="752.463768115942" y="245.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">2009</text>
|
|
33
|
+
<circle fill="#A5A5A5" stroke="#000000" stroke-width="2" cx="810.4347826086956" cy="263.0" r="8.0"/>
|
|
34
|
+
<text fill="#000000" x="810.4347826086956" y="295.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">Swift released</text>
|
|
35
|
+
<text fill="#000000" x="810.4347826086956" y="245.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">2014</text>
|
|
36
|
+
</svg>
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
timeline
|
|
2
|
+
title Software Development Lifecycle
|
|
3
|
+
section Planning
|
|
4
|
+
Requirements Gathering : 2 weeks
|
|
5
|
+
Design Phase : 3 weeks
|
|
6
|
+
section Development
|
|
7
|
+
Sprint 1 : 2 weeks
|
|
8
|
+
Sprint 2 : 2 weeks
|
|
9
|
+
Sprint 3 : 2 weeks
|
|
10
|
+
section Testing
|
|
11
|
+
QA Testing : 1 week
|
|
12
|
+
User Acceptance : 1 week
|
|
13
|
+
section Deployment
|
|
14
|
+
Staging : 3 days
|
|
15
|
+
Production : 2 days
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<svg
|
|
2
|
+
width="960.0"
|
|
3
|
+
height="500.0"
|
|
4
|
+
viewBox="0 0 960 500"
|
|
5
|
+
version="1.2"
|
|
6
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
7
|
+
>
|
|
8
|
+
<text fill="#000000" x="480.0" y="40.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="16.0" font-weight="bold">Software Development Lifecycle</text>
|
|
9
|
+
<text fill="#4472C4" x="80.0" y="100.0" font-family="Arial, Helvetica, sans-serif" font-size="14" font-weight="bold">Planning</text>
|
|
10
|
+
<rect fill="#ffffff" stroke="none" x="80.0" y="140.0" width="800.0" height="6.0" rx="3.0" ry="3.0"/>
|
|
11
|
+
<circle fill="#4472C4" stroke="#000000" stroke-width="2" cx="80.0" cy="143.0" r="8.0"/>
|
|
12
|
+
<text fill="#000000" x="80.0" y="175.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">2 weeks</text>
|
|
13
|
+
<text fill="#000000" x="80.0" y="125.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">Requirements Gathering</text>
|
|
14
|
+
<circle fill="#4472C4" stroke="#000000" stroke-width="2" cx="80.0" cy="143.0" r="8.0"/>
|
|
15
|
+
<text fill="#000000" x="80.0" y="175.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">3 weeks</text>
|
|
16
|
+
<text fill="#000000" x="80.0" y="125.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">Design Phase</text>
|
|
17
|
+
<text fill="#000000" x="80.0" y="166.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">0</text>
|
|
18
|
+
<text fill="#000000" x="880.0" y="166.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">4</text>
|
|
19
|
+
<text fill="#000000" x="480.0" y="166.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">2</text>
|
|
20
|
+
<text fill="#ED7D31" x="80.0" y="160.0" font-family="Arial, Helvetica, sans-serif" font-size="14" font-weight="bold">Development</text>
|
|
21
|
+
<rect fill="#ffffff" stroke="none" x="80.0" y="200.0" width="800.0" height="6.0" rx="3.0" ry="3.0"/>
|
|
22
|
+
<circle fill="#ED7D31" stroke="#000000" stroke-width="2" cx="280.0" cy="203.0" r="8.0"/>
|
|
23
|
+
<text fill="#000000" x="280.0" y="235.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">2 weeks</text>
|
|
24
|
+
<text fill="#000000" x="280.0" y="185.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">Sprint 1</text>
|
|
25
|
+
<circle fill="#ED7D31" stroke="#000000" stroke-width="2" cx="480.0" cy="203.0" r="8.0"/>
|
|
26
|
+
<text fill="#000000" x="480.0" y="235.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">2 weeks</text>
|
|
27
|
+
<text fill="#000000" x="480.0" y="185.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">Sprint 2</text>
|
|
28
|
+
<circle fill="#ED7D31" stroke="#000000" stroke-width="2" cx="680.0" cy="203.0" r="8.0"/>
|
|
29
|
+
<text fill="#000000" x="680.0" y="235.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">2 weeks</text>
|
|
30
|
+
<text fill="#000000" x="680.0" y="185.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">Sprint 3</text>
|
|
31
|
+
<text fill="#A5A5A5" x="80.0" y="220.0" font-family="Arial, Helvetica, sans-serif" font-size="14" font-weight="bold">Testing</text>
|
|
32
|
+
<rect fill="#ffffff" stroke="none" x="80.0" y="260.0" width="800.0" height="6.0" rx="3.0" ry="3.0"/>
|
|
33
|
+
<circle fill="#A5A5A5" stroke="#000000" stroke-width="2" cx="80.0" cy="263.0" r="8.0"/>
|
|
34
|
+
<text fill="#000000" x="80.0" y="295.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">1 week</text>
|
|
35
|
+
<text fill="#000000" x="80.0" y="245.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">QA Testing</text>
|
|
36
|
+
<circle fill="#A5A5A5" stroke="#000000" stroke-width="2" cx="80.0" cy="263.0" r="8.0"/>
|
|
37
|
+
<text fill="#000000" x="80.0" y="295.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">1 week</text>
|
|
38
|
+
<text fill="#000000" x="80.0" y="245.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">User Acceptance</text>
|
|
39
|
+
<text fill="#FFC000" x="80.0" y="280.0" font-family="Arial, Helvetica, sans-serif" font-size="14" font-weight="bold">Deployment</text>
|
|
40
|
+
<rect fill="#ffffff" stroke="none" x="80.0" y="320.0" width="800.0" height="6.0" rx="3.0" ry="3.0"/>
|
|
41
|
+
<circle fill="#FFC000" stroke="#000000" stroke-width="2" cx="80.0" cy="323.0" r="8.0"/>
|
|
42
|
+
<text fill="#000000" x="80.0" y="355.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">3 days</text>
|
|
43
|
+
<text fill="#000000" x="80.0" y="305.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">Staging</text>
|
|
44
|
+
<circle fill="#FFC000" stroke="#000000" stroke-width="2" cx="80.0" cy="323.0" r="8.0"/>
|
|
45
|
+
<text fill="#000000" x="80.0" y="355.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0">2 days</text>
|
|
46
|
+
<text fill="#000000" x="80.0" y="305.0" text-anchor="middle" font-family="Arial, Helvetica, sans-serif" font-size="12.0" font-weight="bold">Production</text>
|
|
47
|
+
</svg>
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
= Timeline Examples
|
|
2
|
+
|
|
3
|
+
== Purpose
|
|
4
|
+
|
|
5
|
+
Timeline diagrams visualize events chronologically, showing sequences of activities or milestones in temporal order.
|
|
6
|
+
|
|
7
|
+
== When to Use
|
|
8
|
+
|
|
9
|
+
* Project milestone visualization
|
|
10
|
+
* Historical event documentation
|
|
11
|
+
* Process chronology
|
|
12
|
+
* Planning phase transitions
|
|
13
|
+
* Event sequence mapping
|
|
14
|
+
|
|
15
|
+
== Syntax Overview
|
|
16
|
+
|
|
17
|
+
[source,mermaid]
|
|
18
|
+
----
|
|
19
|
+
timeline
|
|
20
|
+
title Project Timeline
|
|
21
|
+
section Phase 1
|
|
22
|
+
Event 1
|
|
23
|
+
Event 2
|
|
24
|
+
section Phase 2
|
|
25
|
+
Event 3
|
|
26
|
+
----
|
|
27
|
+
|
|
28
|
+
== Examples
|
|
29
|
+
|
|
30
|
+
=== 01: Simple Timeline
|
|
31
|
+
|
|
32
|
+
Demonstrates basic timeline with sequential events.
|
|
33
|
+
|
|
34
|
+
**File**: link:01-simple-timeline.mmd[01-simple-timeline.mmd]
|
|
35
|
+
|
|
36
|
+
[source,mermaid]
|
|
37
|
+
----
|
|
38
|
+
include::01-simple-timeline.mmd[]
|
|
39
|
+
----
|
|
40
|
+
|
|
41
|
+
image::01-simple-timeline.svg[]
|
|
42
|
+
|
|
43
|
+
=== 02: Periods
|
|
44
|
+
|
|
45
|
+
Showcases timeline with time periods and durations.
|
|
46
|
+
|
|
47
|
+
**File**: link:02-periods.mmd[02-periods.mmd]
|
|
48
|
+
|
|
49
|
+
[source,mermaid]
|
|
50
|
+
----
|
|
51
|
+
include::02-periods.mmd[]
|
|
52
|
+
----
|
|
53
|
+
|
|
54
|
+
image::02-periods.svg[]
|
|
55
|
+
|
|
56
|
+
== Features Demonstrated
|
|
57
|
+
|
|
58
|
+
[%header,cols="1,1"]
|
|
59
|
+
|===
|
|
60
|
+
| Feature | Example
|
|
61
|
+
|
|
62
|
+
| Basic timeline
|
|
63
|
+
| 01, 02
|
|
64
|
+
|
|
65
|
+
| Section grouping
|
|
66
|
+
| 01, 02
|
|
67
|
+
|
|
68
|
+
| Event sequencing
|
|
69
|
+
| 01, 02
|
|
70
|
+
|
|
71
|
+
| Period visualization
|
|
72
|
+
| 02
|
|
73
|
+
|===
|
|
74
|
+
|
|
75
|
+
== Additional Resources
|
|
76
|
+
|
|
77
|
+
* link:../../README.adoc[Main Documentation]
|
|
78
|
+
* https://mermaid.js.org/syntax/timeline.html[Mermaid Timeline Documentation]
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<svg
|
|
2
|
+
width="800.0"
|
|
3
|
+
height="600.0"
|
|
4
|
+
viewBox="0 0 800 600"
|
|
5
|
+
version="1.2"
|
|
6
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
7
|
+
>
|
|
8
|
+
<g>
|
|
9
|
+
<rect fill="#8dd3c7" stroke="#000000" stroke-width="2" x="10.0" y="10.0" width="780.0" height="580.0" rx="4.0" ry="4.0"/>
|
|
10
|
+
<text fill="#000000" x="15.0" y="25.0" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">Company Revenue</text>
|
|
11
|
+
<g>
|
|
12
|
+
<rect fill="#ffffb3" stroke="#000000" stroke-width="2" x="20.0" y="30.0" width="760.0" height="179.14285714285717" rx="4.0" ry="4.0"/>
|
|
13
|
+
<text fill="#000000" x="25.0" y="45.0" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">North America</text>
|
|
14
|
+
<g>
|
|
15
|
+
<rect fill="#bebada" stroke="#000000" stroke-width="2" x="30.0" y="50.0" width="740.0" height="117.74436090225566" rx="4.0" ry="4.0"/>
|
|
16
|
+
<text fill="#000000" x="35.0" y="65.0" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">US</text>
|
|
17
|
+
<text fill="#000000" x="35.0" y="80.0" font-family="Arial, Helvetica, sans-serif" font-size="10">45000</text>
|
|
18
|
+
</g>
|
|
19
|
+
<g>
|
|
20
|
+
<rect fill="#bebada" stroke="#000000" stroke-width="2" x="30.0" y="177.74436090225566" width="740.0" height="40.0" rx="4.0" ry="4.0"/>
|
|
21
|
+
<text fill="#000000" x="35.0" y="192.74436090225566" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">Canada</text>
|
|
22
|
+
<text fill="#000000" x="35.0" y="207.74436090225566" font-family="Arial, Helvetica, sans-serif" font-size="10">12000</text>
|
|
23
|
+
</g>
|
|
24
|
+
</g>
|
|
25
|
+
<g>
|
|
26
|
+
<rect fill="#ffffb3" stroke="#000000" stroke-width="2" x="20.0" y="219.14285714285717" width="760.0" height="213.71428571428572" rx="4.0" ry="4.0"/>
|
|
27
|
+
<text fill="#000000" x="25.0" y="234.14285714285717" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">Europe</text>
|
|
28
|
+
<g>
|
|
29
|
+
<rect fill="#bebada" stroke="#000000" stroke-width="2" x="30.0" y="239.14285714285717" width="740.0" height="75.6470588235294" rx="4.0" ry="4.0"/>
|
|
30
|
+
<text fill="#000000" x="35.0" y="254.14285714285717" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">UK</text>
|
|
31
|
+
<text fill="#000000" x="35.0" y="269.14285714285717" font-family="Arial, Helvetica, sans-serif" font-size="10">28000</text>
|
|
32
|
+
</g>
|
|
33
|
+
<g>
|
|
34
|
+
<rect fill="#bebada" stroke="#000000" stroke-width="2" x="30.0" y="324.78991596638656" width="740.0" height="59.43697478991597" rx="4.0" ry="4.0"/>
|
|
35
|
+
<text fill="#000000" x="35.0" y="339.78991596638656" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">Germany</text>
|
|
36
|
+
<text fill="#000000" x="35.0" y="354.78991596638656" font-family="Arial, Helvetica, sans-serif" font-size="10">22000</text>
|
|
37
|
+
</g>
|
|
38
|
+
<g>
|
|
39
|
+
<rect fill="#bebada" stroke="#000000" stroke-width="2" x="30.0" y="394.2268907563025" width="740.0" height="48.63025210084034" rx="4.0" ry="4.0"/>
|
|
40
|
+
<text fill="#000000" x="35.0" y="409.2268907563025" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">France</text>
|
|
41
|
+
<text fill="#000000" x="35.0" y="424.2268907563025" font-family="Arial, Helvetica, sans-serif" font-size="10">18000</text>
|
|
42
|
+
</g>
|
|
43
|
+
</g>
|
|
44
|
+
<g>
|
|
45
|
+
<rect fill="#ffffb3" stroke="#000000" stroke-width="2" x="20.0" y="442.8571428571429" width="760.0" height="157.14285714285714" rx="4.0" ry="4.0"/>
|
|
46
|
+
<text fill="#000000" x="25.0" y="457.8571428571429" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">Asia</text>
|
|
47
|
+
<g>
|
|
48
|
+
<rect fill="#bebada" stroke="#000000" stroke-width="2" x="30.0" y="462.8571428571429" width="740.0" height="40.0" rx="4.0" ry="4.0"/>
|
|
49
|
+
<text fill="#000000" x="35.0" y="477.8571428571429" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">Japan</text>
|
|
50
|
+
<text fill="#000000" x="35.0" y="492.8571428571429" font-family="Arial, Helvetica, sans-serif" font-size="10">15000</text>
|
|
51
|
+
</g>
|
|
52
|
+
<g>
|
|
53
|
+
<rect fill="#bebada" stroke="#000000" stroke-width="2" x="30.0" y="512.8571428571429" width="740.0" height="88.99999999999999" rx="4.0" ry="4.0"/>
|
|
54
|
+
<text fill="#000000" x="35.0" y="527.8571428571429" font-family="Arial, Helvetica, sans-serif" font-size="12" font-weight="bold">China</text>
|
|
55
|
+
<text fill="#000000" x="35.0" y="542.8571428571429" font-family="Arial, Helvetica, sans-serif" font-size="10">35000</text>
|
|
56
|
+
</g>
|
|
57
|
+
</g>
|
|
58
|
+
</g>
|
|
59
|
+
</svg>
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
= Treemap Diagram Examples
|
|
2
|
+
|
|
3
|
+
== Purpose
|
|
4
|
+
|
|
5
|
+
Treemap diagrams display hierarchical data as nested rectangles, with size representing quantitative values.
|
|
6
|
+
|
|
7
|
+
== When to Use
|
|
8
|
+
|
|
9
|
+
* Disk space usage visualization
|
|
10
|
+
* Portfolio allocation
|
|
11
|
+
* Hierarchical data proportions
|
|
12
|
+
* Market share by category
|
|
13
|
+
* Resource distribution trees
|
|
14
|
+
|
|
15
|
+
== Syntax Overview
|
|
16
|
+
|
|
17
|
+
[source,mermaid]
|
|
18
|
+
----
|
|
19
|
+
treemap
|
|
20
|
+
Root
|
|
21
|
+
Child1: 40
|
|
22
|
+
Child2: 60
|
|
23
|
+
----
|
|
24
|
+
|
|
25
|
+
== Examples
|
|
26
|
+
|
|
27
|
+
=== 01: Basic Treemap
|
|
28
|
+
|
|
29
|
+
Demonstrates basic treemap with hierarchical values.
|
|
30
|
+
|
|
31
|
+
**File**: link:01-basic-treemap.mmd[01-basic-treemap.mmd]
|
|
32
|
+
|
|
33
|
+
[source,mermaid]
|
|
34
|
+
----
|
|
35
|
+
include::01-basic-treemap.mmd[]
|
|
36
|
+
----
|
|
37
|
+
|
|
38
|
+
image::01-basic-treemap.svg[]
|
|
39
|
+
|
|
40
|
+
== Features Demonstrated
|
|
41
|
+
|
|
42
|
+
[%header,cols="1,1"]
|
|
43
|
+
|===
|
|
44
|
+
| Feature | Example
|
|
45
|
+
|
|
46
|
+
| Hierarchical structure
|
|
47
|
+
| 01
|
|
48
|
+
|
|
49
|
+
| Proportional sizing
|
|
50
|
+
| 01
|
|
51
|
+
|
|
52
|
+
| Nested categories
|
|
53
|
+
| 01
|
|
54
|
+
|===
|
|
55
|
+
|
|
56
|
+
== Additional Resources
|
|
57
|
+
|
|
58
|
+
* link:../../README.adoc[Main Documentation]
|
|
59
|
+
* https://mermaid.js.org/syntax/treemap.html[Mermaid Treemap Documentation]
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
journey
|
|
2
|
+
title Customer Support Interaction Journey
|
|
3
|
+
section Discovery
|
|
4
|
+
Visit help center: 3: Customer
|
|
5
|
+
Search for solution: 2: Customer
|
|
6
|
+
Click support chat: 4: Customer
|
|
7
|
+
section Initial Contact
|
|
8
|
+
Greet customer: 5: Customer, Agent
|
|
9
|
+
Describe issue: 3: Customer, Agent
|
|
10
|
+
Agent reviews account: 4: Agent, System
|
|
11
|
+
section Diagnosis
|
|
12
|
+
Agent asks clarifying questions: 4: Customer, Agent
|
|
13
|
+
Customer provides details: 3: Customer, Agent
|
|
14
|
+
Agent checks logs: 2: Agent, System
|
|
15
|
+
Agent identifies root cause: 5: Agent
|
|
16
|
+
section Resolution
|
|
17
|
+
Agent explains solution: 5: Customer, Agent
|
|
18
|
+
Customer follows steps: 4: Customer
|
|
19
|
+
Issue resolved: 5: Customer, Agent
|
|
20
|
+
section Follow-up
|
|
21
|
+
Agent confirms resolution: 5: Customer, Agent
|
|
22
|
+
Customer rates experience: 5: Customer
|
|
23
|
+
Agent documents case: 4: Agent, System
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<svg width="400" height="200" viewBox="0 0 400 200" version="1.2" xmlns="http://www.w3.org/2000/svg">
|
|
3
|
+
<rect x="50" y="50" width="300" height="100" fill="#f0f0f0" stroke="#000000" stroke-width="2"/>
|
|
4
|
+
<text x="200" y="100" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" fill="#000000">User Journey (parser needs fixes)</text>
|
|
5
|
+
</svg>
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
journey
|
|
2
|
+
title E-commerce Purchase Flow
|
|
3
|
+
section Browse
|
|
4
|
+
View Products: 5: Customer
|
|
5
|
+
Search Items: 4: Customer
|
|
6
|
+
Filter Results: 3: Customer
|
|
7
|
+
section Purchase
|
|
8
|
+
Add to Cart: 5: Customer
|
|
9
|
+
Verify Stock: 3: System
|
|
10
|
+
Apply Discount: 4: Customer, System
|
|
11
|
+
section Checkout
|
|
12
|
+
Enter Payment: 4: Customer
|
|
13
|
+
Process Payment: 5: Payment Gateway
|
|
14
|
+
Confirm Order: 5: Customer, System
|
|
15
|
+
section Fulfillment
|
|
16
|
+
Pack Order: 4: Warehouse
|
|
17
|
+
Ship Order: 5: Courier
|
|
18
|
+
Track Shipment: 5: Customer
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
<svg
|
|
2
|
+
width="770.0"
|
|
3
|
+
height="890.0"
|
|
4
|
+
viewBox="0 0 770 890"
|
|
5
|
+
version="1.2"
|
|
6
|
+
xmlns="http://www.w3.org/2000/svg"
|
|
7
|
+
>
|
|
8
|
+
<text fill="#000000" x="20.0" y="40.0" font-family="Arial, sans-serif" font-size="20" font-weight="bold">E-commerce Purchase Flow</text>
|
|
9
|
+
<text fill="#666666" x="20.0" y="76.0" font-family="Arial, sans-serif" font-size="16" font-weight="bold">Browse</text>
|
|
10
|
+
<g id="task-task_0">
|
|
11
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="50.0" y="50.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
12
|
+
<text fill="#000000" x="120.0" y="74.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">View Products</text>
|
|
13
|
+
<text fill="#000000" x="120.0" y="102.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">5</text>
|
|
14
|
+
<text fill="#333333" x="120.0" y="123.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer</text>
|
|
15
|
+
</g>
|
|
16
|
+
<g id="task-task_1">
|
|
17
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="300.0" y="50.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
18
|
+
<text fill="#000000" x="370.0" y="74.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Search Items</text>
|
|
19
|
+
<text fill="#000000" x="370.0" y="102.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">4</text>
|
|
20
|
+
<text fill="#333333" x="370.0" y="123.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer</text>
|
|
21
|
+
</g>
|
|
22
|
+
<g id="task-task_2">
|
|
23
|
+
<rect fill="#feca57" stroke="#333333" stroke-width="2" x="550.0" y="50.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
24
|
+
<text fill="#000000" x="620.0" y="74.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Filter Results</text>
|
|
25
|
+
<text fill="#000000" x="620.0" y="102.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">3</text>
|
|
26
|
+
<text fill="#333333" x="620.0" y="123.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer</text>
|
|
27
|
+
</g>
|
|
28
|
+
<text fill="#666666" x="20.0" y="122.0" font-family="Arial, sans-serif" font-size="16" font-weight="bold">Purchase</text>
|
|
29
|
+
<g id="task-task_3">
|
|
30
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="50.0" y="250.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
31
|
+
<text fill="#000000" x="120.0" y="274.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Add to Cart</text>
|
|
32
|
+
<text fill="#000000" x="120.0" y="302.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">5</text>
|
|
33
|
+
<text fill="#333333" x="120.0" y="323.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer</text>
|
|
34
|
+
</g>
|
|
35
|
+
<g id="task-task_4">
|
|
36
|
+
<rect fill="#feca57" stroke="#333333" stroke-width="2" x="300.0" y="250.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
37
|
+
<text fill="#000000" x="370.0" y="274.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Verify Stock</text>
|
|
38
|
+
<text fill="#000000" x="370.0" y="302.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">3</text>
|
|
39
|
+
<text fill="#333333" x="370.0" y="323.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">System</text>
|
|
40
|
+
</g>
|
|
41
|
+
<g id="task-task_5">
|
|
42
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="550.0" y="250.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
43
|
+
<text fill="#000000" x="620.0" y="274.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Apply Discount</text>
|
|
44
|
+
<text fill="#000000" x="620.0" y="302.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">4</text>
|
|
45
|
+
<text fill="#333333" x="620.0" y="323.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer, System</text>
|
|
46
|
+
</g>
|
|
47
|
+
<text fill="#666666" x="20.0" y="168.0" font-family="Arial, sans-serif" font-size="16" font-weight="bold">Checkout</text>
|
|
48
|
+
<g id="task-task_6">
|
|
49
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="50.0" y="450.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
50
|
+
<text fill="#000000" x="120.0" y="474.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Enter Payment</text>
|
|
51
|
+
<text fill="#000000" x="120.0" y="502.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">4</text>
|
|
52
|
+
<text fill="#333333" x="120.0" y="523.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer</text>
|
|
53
|
+
</g>
|
|
54
|
+
<g id="task-task_7">
|
|
55
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="300.0" y="450.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
56
|
+
<text fill="#000000" x="370.0" y="474.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Process Payment</text>
|
|
57
|
+
<text fill="#000000" x="370.0" y="502.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">5</text>
|
|
58
|
+
<text fill="#333333" x="370.0" y="523.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Payment Gateway</text>
|
|
59
|
+
</g>
|
|
60
|
+
<g id="task-task_8">
|
|
61
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="550.0" y="450.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
62
|
+
<text fill="#000000" x="620.0" y="474.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Confirm Order</text>
|
|
63
|
+
<text fill="#000000" x="620.0" y="502.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">5</text>
|
|
64
|
+
<text fill="#333333" x="620.0" y="523.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer, System</text>
|
|
65
|
+
</g>
|
|
66
|
+
<text fill="#666666" x="20.0" y="214.0" font-family="Arial, sans-serif" font-size="16" font-weight="bold">Fulfillment</text>
|
|
67
|
+
<g id="task-task_9">
|
|
68
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="50.0" y="650.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
69
|
+
<text fill="#000000" x="120.0" y="674.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Pack Order</text>
|
|
70
|
+
<text fill="#000000" x="120.0" y="702.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">4</text>
|
|
71
|
+
<text fill="#333333" x="120.0" y="723.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Warehouse</text>
|
|
72
|
+
</g>
|
|
73
|
+
<g id="task-task_10">
|
|
74
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="300.0" y="650.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
75
|
+
<text fill="#000000" x="370.0" y="674.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Ship Order</text>
|
|
76
|
+
<text fill="#000000" x="370.0" y="702.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">5</text>
|
|
77
|
+
<text fill="#333333" x="370.0" y="723.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Courier</text>
|
|
78
|
+
</g>
|
|
79
|
+
<g id="task-task_11">
|
|
80
|
+
<rect fill="#48dbfb" stroke="#333333" stroke-width="2" x="550.0" y="650.0" width="140.0" height="80.0" rx="5.0" ry="5.0"/>
|
|
81
|
+
<text fill="#000000" x="620.0" y="674.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Track Shipment</text>
|
|
82
|
+
<text fill="#000000" x="620.0" y="702.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="18" font-weight="bold">5</text>
|
|
83
|
+
<text fill="#333333" x="620.0" y="723.0" text-anchor="middle" font-family="Arial, sans-serif" font-size="11">Customer</text>
|
|
84
|
+
</g>
|
|
85
|
+
<g id="arrow-flow_0">
|
|
86
|
+
<line stroke="#666666" stroke-width="2" x1="190.0" y1="90.0" x2="300.0" y2="90.0"/>
|
|
87
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 300,90 L 291.33974596215563,95.0 M 300,90 L 291.33974596215563,85.0"/>
|
|
88
|
+
</g>
|
|
89
|
+
<g id="arrow-flow_1">
|
|
90
|
+
<line stroke="#666666" stroke-width="2" x1="440.0" y1="90.0" x2="550.0" y2="90.0"/>
|
|
91
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 550,90 L 541.3397459621556,95.0 M 550,90 L 541.3397459621556,85.0"/>
|
|
92
|
+
</g>
|
|
93
|
+
<g id="arrow-flow_2">
|
|
94
|
+
<line stroke="#666666" stroke-width="2" x1="690.0" y1="90.0" x2="50.0" y2="290.0"/>
|
|
95
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 50,290 L 56.774664118139754,282.64446289613124 M 50,290 L 59.75741404949922,292.1892626764816"/>
|
|
96
|
+
</g>
|
|
97
|
+
<g id="arrow-flow_3">
|
|
98
|
+
<line stroke="#666666" stroke-width="2" x1="190.0" y1="290.0" x2="300.0" y2="290.0"/>
|
|
99
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 300,290 L 291.33974596215563,295.0 M 300,290 L 291.33974596215563,285.0"/>
|
|
100
|
+
</g>
|
|
101
|
+
<g id="arrow-flow_4">
|
|
102
|
+
<line stroke="#666666" stroke-width="2" x1="440.0" y1="290.0" x2="550.0" y2="290.0"/>
|
|
103
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 550,290 L 541.3397459621556,295.0 M 550,290 L 541.3397459621556,285.0"/>
|
|
104
|
+
</g>
|
|
105
|
+
<g id="arrow-flow_5">
|
|
106
|
+
<line stroke="#666666" stroke-width="2" x1="690.0" y1="290.0" x2="50.0" y2="490.0"/>
|
|
107
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 50,490 L 56.774664118139754,482.64446289613124 M 50,490 L 59.75741404949922,492.1892626764816"/>
|
|
108
|
+
</g>
|
|
109
|
+
<g id="arrow-flow_6">
|
|
110
|
+
<line stroke="#666666" stroke-width="2" x1="190.0" y1="490.0" x2="300.0" y2="490.0"/>
|
|
111
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 300,490 L 291.33974596215563,495.0 M 300,490 L 291.33974596215563,485.0"/>
|
|
112
|
+
</g>
|
|
113
|
+
<g id="arrow-flow_7">
|
|
114
|
+
<line stroke="#666666" stroke-width="2" x1="440.0" y1="490.0" x2="550.0" y2="490.0"/>
|
|
115
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 550,490 L 541.3397459621556,495.0 M 550,490 L 541.3397459621556,485.0"/>
|
|
116
|
+
</g>
|
|
117
|
+
<g id="arrow-flow_8">
|
|
118
|
+
<line stroke="#666666" stroke-width="2" x1="690.0" y1="490.0" x2="50.0" y2="690.0"/>
|
|
119
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 50,690 L 56.774664118139754,682.6444628961312 M 50,690 L 59.75741404949922,692.1892626764816"/>
|
|
120
|
+
</g>
|
|
121
|
+
<g id="arrow-flow_9">
|
|
122
|
+
<line stroke="#666666" stroke-width="2" x1="190.0" y1="690.0" x2="300.0" y2="690.0"/>
|
|
123
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 300,690 L 291.33974596215563,695.0 M 300,690 L 291.33974596215563,685.0"/>
|
|
124
|
+
</g>
|
|
125
|
+
<g id="arrow-flow_10">
|
|
126
|
+
<line stroke="#666666" stroke-width="2" x1="440.0" y1="690.0" x2="550.0" y2="690.0"/>
|
|
127
|
+
<path fill="none" stroke="#666666" stroke-width="2" d="M 550,690 L 541.3397459621556,695.0 M 550,690 L 541.3397459621556,685.0"/>
|
|
128
|
+
</g>
|
|
129
|
+
</svg>
|