diff --git a/docs/n00b-syntaxReference.md b/docs/n00b-syntaxReference.md
index 2c9ef72074..7edb4c319f 100644
--- a/docs/n00b-syntaxReference.md
+++ b/docs/n00b-syntaxReference.md
@@ -26,18 +26,6 @@ erDiagram
PRODUCT ||--o{ ORDER-ITEM : "ordered in"
```
-```mermaid
-erDiagram
- CUSTOMER }|..|{ DELIVERY-ADDRESS : has
- CUSTOMER ||--o{ ORDER : places
- CUSTOMER ||--o{ INVOICE : "liable for"
- DELIVERY-ADDRESS ||--o{ ORDER : receives
- INVOICE ||--|{ ORDER : covers
- ORDER ||--|{ ORDER-ITEM : includes
- PRODUCT-CATEGORY ||--|{ PRODUCT : contains
- PRODUCT ||--o{ ORDER-ITEM : "ordered in"
-```
-
The [Getting Started](./n00b-gettingStarted.md) section can also provide some practical examples of mermaid syntax.
## Diagram Breaking
diff --git a/package.json b/package.json
index a47f06ef89..2f55993e81 100644
--- a/package.json
+++ b/package.json
@@ -37,6 +37,10 @@
"todo-postbuild": "documentation build src/mermaidAPI.ts src/config.ts src/defaultConfig.ts --shallow -f md --markdown-toc false > src/docs/Setup.md && prettier --write src/docs/Setup.md",
"release": "pnpm build",
"lint": "eslint --cache --ignore-path .gitignore . && pnpm lint:jison && prettier --check .",
+ "vdocs:dev": "vitepress dev vdocs",
+ "vdocs:build": "vitepress build vdocs",
+ "vdocs:serve": "vitepress serve vdocs",
+ "postbuild": "echo 'building docs from code here soon'",
"lint:fix": "eslint --fix --ignore-path .gitignore . && prettier --write .",
"lint:jison": "ts-node-esm --transpileOnly packages/mermaid/src/jison/lint.mts",
"cypress": "cypress run",
@@ -103,6 +107,7 @@
"coveralls": "^3.1.1",
"cypress": "^10.0.0",
"cypress-image-snapshot": "^4.0.1",
+ "esbuild": "^0.15.8",
"documentation": "13.2.0",
"eslint": "^8.24.0",
"eslint-config-prettier": "^8.5.0",
@@ -120,6 +125,7 @@
"jison": "^0.4.18",
"jsdom": "^20.0.0",
"lint-staged": "^13.0.0",
+ "markdown-it": "^13.0.1",
"moment": "^2.23.0",
"path-browserify": "^1.0.1",
"prettier": "^2.7.1",
@@ -130,6 +136,9 @@
"ts-node": "^10.9.1",
"typescript": "^4.8.3",
"unist-util-flatmap": "^1.0.0",
+ "vitepress": "^1.0.0-alpha.19",
+ "vitepress-plugin-mermaid": "^2.0.8",
+ "vitepress-plugin-search": "^1.0.4-alpha.11",
"vite": "^3.0.9",
"vitest": "^0.23.1"
},
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index b1bf9e440f..7e86c622e3 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -24,7 +24,7 @@ importers:
'@typescript-eslint/eslint-plugin': ^5.37.0
'@typescript-eslint/parser': ^5.37.0
'@vitest/coverage-c8': ^0.23.2
- '@vitest/ui': ^0.23.2
+ '@vitest/ui': ^0.23.4
concurrently: ^7.4.0
coveralls: ^3.1.1
cypress: ^10.0.0
@@ -34,6 +34,7 @@ importers:
dagre-d3: ^0.6.4
documentation: 13.2.0
dompurify: 2.4.0
+ esbuild: ^0.15.8
eslint: ^8.24.0
eslint-config-prettier: ^8.5.0
eslint-plugin-cypress: ^2.12.1
@@ -54,6 +55,7 @@ importers:
khroma: ^2.0.0
lint-staged: ^13.0.0
lodash: ^4.17.21
+ markdown-it: ^13.0.1
moment: ^2.23.0
moment-mini: ^2.24.0
non-layered-tidy-tree-layout: ^2.0.2
@@ -70,6 +72,9 @@ importers:
unist-util-flatmap: ^1.0.0
uuid: ^9.0.0
vite: ^3.0.9
+ vitepress: ^1.0.0-alpha.19
+ vitepress-plugin-mermaid: ^2.0.8
+ vitepress-plugin-search: ^1.0.4-alpha.11
vitest: ^0.23.1
dependencies:
'@braintree/sanitize-url': 6.0.0
@@ -109,6 +114,7 @@ importers:
cypress: 10.8.0
cypress-image-snapshot: 4.0.1_cypress@10.8.0+jest@29.1.1
documentation: 13.2.0
+ esbuild: 0.15.8
eslint: 8.24.0
eslint-config-prettier: 8.5.0_eslint@8.24.0
eslint-plugin-cypress: 2.12.1_eslint@8.24.0
@@ -125,6 +131,7 @@ importers:
jison: 0.4.18
jsdom: 20.0.0
lint-staged: 13.0.3
+ markdown-it: 13.0.1
moment: 2.29.4
path-browserify: 1.0.1
prettier: 2.7.1
@@ -136,6 +143,9 @@ importers:
typescript: 4.8.3
unist-util-flatmap: 1.0.0
vite: 3.1.3
+ vitepress: 1.0.0-alpha.19
+ vitepress-plugin-mermaid: 2.0.8_vitepress@1.0.0-alpha.19
+ vitepress-plugin-search: 1.0.4-alpha.11_pva2cdrgfgaiwbwst2xhmwggw4
vitest: 0.23.4_y2hohvmcqnhseytaw4yjcnsnkm
packages/mermaid:
@@ -290,6 +300,116 @@ importers:
packages:
+ /@algolia/autocomplete-core/1.7.1:
+ resolution: {integrity: sha512-eiZw+fxMzNQn01S8dA/hcCpoWCOCwcIIEUtHHdzN5TGB3IpzLbuhqFeTfh2OUhhgkE8Uo17+wH+QJ/wYyQmmzg==}
+ dependencies:
+ '@algolia/autocomplete-shared': 1.7.1
+ dev: true
+
+ /@algolia/autocomplete-preset-algolia/1.7.1_algoliasearch@4.14.2:
+ resolution: {integrity: sha512-pJwmIxeJCymU1M6cGujnaIYcY3QPOVYZOXhFkWVM7IxKzy272BwCvMFMyc5NpG/QmiObBxjo7myd060OeTNJXg==}
+ peerDependencies:
+ '@algolia/client-search': ^4.9.1
+ algoliasearch: ^4.9.1
+ dependencies:
+ '@algolia/autocomplete-shared': 1.7.1
+ algoliasearch: 4.14.2
+ dev: true
+
+ /@algolia/autocomplete-shared/1.7.1:
+ resolution: {integrity: sha512-eTmGVqY3GeyBTT8IWiB2K5EuURAqhnumfktAEoHxfDY2o7vg2rSnO16ZtIG0fMgt3py28Vwgq42/bVEuaQV7pg==}
+ dev: true
+
+ /@algolia/cache-browser-local-storage/4.14.2:
+ resolution: {integrity: sha512-FRweBkK/ywO+GKYfAWbrepewQsPTIEirhi1BdykX9mxvBPtGNKccYAxvGdDCumU1jL4r3cayio4psfzKMejBlA==}
+ dependencies:
+ '@algolia/cache-common': 4.14.2
+ dev: true
+
+ /@algolia/cache-common/4.14.2:
+ resolution: {integrity: sha512-SbvAlG9VqNanCErr44q6lEKD2qoK4XtFNx9Qn8FK26ePCI8I9yU7pYB+eM/cZdS9SzQCRJBbHUumVr4bsQ4uxg==}
+ dev: true
+
+ /@algolia/cache-in-memory/4.14.2:
+ resolution: {integrity: sha512-HrOukWoop9XB/VFojPv1R5SVXowgI56T9pmezd/djh2JnVN/vXswhXV51RKy4nCpqxyHt/aGFSq2qkDvj6KiuQ==}
+ dependencies:
+ '@algolia/cache-common': 4.14.2
+ dev: true
+
+ /@algolia/client-account/4.14.2:
+ resolution: {integrity: sha512-WHtriQqGyibbb/Rx71YY43T0cXqyelEU0lB2QMBRXvD2X0iyeGl4qMxocgEIcbHyK7uqE7hKgjT8aBrHqhgc1w==}
+ dependencies:
+ '@algolia/client-common': 4.14.2
+ '@algolia/client-search': 4.14.2
+ '@algolia/transporter': 4.14.2
+ dev: true
+
+ /@algolia/client-analytics/4.14.2:
+ resolution: {integrity: sha512-yBvBv2mw+HX5a+aeR0dkvUbFZsiC4FKSnfqk9rrfX+QrlNOKEhCG0tJzjiOggRW4EcNqRmaTULIYvIzQVL2KYQ==}
+ dependencies:
+ '@algolia/client-common': 4.14.2
+ '@algolia/client-search': 4.14.2
+ '@algolia/requester-common': 4.14.2
+ '@algolia/transporter': 4.14.2
+ dev: true
+
+ /@algolia/client-common/4.14.2:
+ resolution: {integrity: sha512-43o4fslNLcktgtDMVaT5XwlzsDPzlqvqesRi4MjQz2x4/Sxm7zYg5LRYFol1BIhG6EwxKvSUq8HcC/KxJu3J0Q==}
+ dependencies:
+ '@algolia/requester-common': 4.14.2
+ '@algolia/transporter': 4.14.2
+ dev: true
+
+ /@algolia/client-personalization/4.14.2:
+ resolution: {integrity: sha512-ACCoLi0cL8CBZ1W/2juehSltrw2iqsQBnfiu/Rbl9W2yE6o2ZUb97+sqN/jBqYNQBS+o0ekTMKNkQjHHAcEXNw==}
+ dependencies:
+ '@algolia/client-common': 4.14.2
+ '@algolia/requester-common': 4.14.2
+ '@algolia/transporter': 4.14.2
+ dev: true
+
+ /@algolia/client-search/4.14.2:
+ resolution: {integrity: sha512-L5zScdOmcZ6NGiVbLKTvP02UbxZ0njd5Vq9nJAmPFtjffUSOGEp11BmD2oMJ5QvARgx2XbX4KzTTNS5ECYIMWw==}
+ dependencies:
+ '@algolia/client-common': 4.14.2
+ '@algolia/requester-common': 4.14.2
+ '@algolia/transporter': 4.14.2
+ dev: true
+
+ /@algolia/logger-common/4.14.2:
+ resolution: {integrity: sha512-/JGlYvdV++IcMHBnVFsqEisTiOeEr6cUJtpjz8zc0A9c31JrtLm318Njc72p14Pnkw3A/5lHHh+QxpJ6WFTmsA==}
+ dev: true
+
+ /@algolia/logger-console/4.14.2:
+ resolution: {integrity: sha512-8S2PlpdshbkwlLCSAB5f8c91xyc84VM9Ar9EdfE9UmX+NrKNYnWR1maXXVDQQoto07G1Ol/tYFnFVhUZq0xV/g==}
+ dependencies:
+ '@algolia/logger-common': 4.14.2
+ dev: true
+
+ /@algolia/requester-browser-xhr/4.14.2:
+ resolution: {integrity: sha512-CEh//xYz/WfxHFh7pcMjQNWgpl4wFB85lUMRyVwaDPibNzQRVcV33YS+63fShFWc2+42YEipFGH2iPzlpszmDw==}
+ dependencies:
+ '@algolia/requester-common': 4.14.2
+ dev: true
+
+ /@algolia/requester-common/4.14.2:
+ resolution: {integrity: sha512-73YQsBOKa5fvVV3My7iZHu1sUqmjjfs9TteFWwPwDmnad7T0VTCopttcsM3OjLxZFtBnX61Xxl2T2gmG2O4ehg==}
+ dev: true
+
+ /@algolia/requester-node-http/4.14.2:
+ resolution: {integrity: sha512-oDbb02kd1o5GTEld4pETlPZLY0e+gOSWjWMJHWTgDXbv9rm/o2cF7japO6Vj1ENnrqWvLBmW1OzV9g6FUFhFXg==}
+ dependencies:
+ '@algolia/requester-common': 4.14.2
+ dev: true
+
+ /@algolia/transporter/4.14.2:
+ resolution: {integrity: sha512-t89dfQb2T9MFQHidjHcfhh6iGMNwvuKUvojAj+JsrHAGbuSy7yE4BylhLX6R0Q1xYRoC4Vvv+O5qIw/LdnQfsQ==}
+ dependencies:
+ '@algolia/cache-common': 4.14.2
+ '@algolia/logger-common': 4.14.2
+ '@algolia/requester-common': 4.14.2
+ dev: true
+
/@applitools/dom-capture/11.1.1:
resolution: {integrity: sha512-aUPsS3h/caQryythSjaX4uG23HzTBsnFBfO7BUvuomMdAm3qIHBstIHPCiUSJbXmPBabfqlWm59YKdxC3PTWcw==}
engines: {node: '>=8.9.0'}
@@ -2216,6 +2336,44 @@ packages:
- supports-color
dev: true
+ /@docsearch/css/3.2.1:
+ resolution: {integrity: sha512-gaP6TxxwQC+K8D6TRx5WULUWKrcbzECOPA2KCVMuI+6C7dNiGUk5yXXzVhc5sld79XKYLnO9DRTI4mjXDYkh+g==}
+ dev: true
+
+ /@docsearch/js/3.2.1:
+ resolution: {integrity: sha512-H1PekEtSeS0msetR2YGGey2w7jQ2wAKfGODJvQTygSwMgUZ+2DHpzUgeDyEBIXRIfaBcoQneqrzsljM62pm6Xg==}
+ dependencies:
+ '@docsearch/react': 3.2.1
+ preact: 10.11.0
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - '@types/react'
+ - react
+ - react-dom
+ dev: true
+
+ /@docsearch/react/3.2.1:
+ resolution: {integrity: sha512-EzTQ/y82s14IQC5XVestiK/kFFMe2aagoYFuTAIfIb/e+4FU7kSMKonRtLwsCiLQHmjvNQq+HO+33giJ5YVtaQ==}
+ peerDependencies:
+ '@types/react': '>= 16.8.0 < 19.0.0'
+ react: '>= 16.8.0 < 19.0.0'
+ react-dom: '>= 16.8.0 < 19.0.0'
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ react:
+ optional: true
+ react-dom:
+ optional: true
+ dependencies:
+ '@algolia/autocomplete-core': 1.7.1
+ '@algolia/autocomplete-preset-algolia': 1.7.1_algoliasearch@4.14.2
+ '@docsearch/css': 3.2.1
+ algoliasearch: 4.14.2
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ dev: true
+
/@es-joy/jsdoccomment/0.31.0:
resolution: {integrity: sha512-tc1/iuQcnaiSIUVad72PBierDFpsxdUHtEF/OrfqvM1CBAsIoMP51j52jTMb3dXriwhieTo289InzZj72jL3EQ==}
engines: {node: ^14 || ^16 || ^17 || ^18}
@@ -3091,6 +3249,10 @@ packages:
resolution: {integrity: sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==}
dev: false
+ /@types/web-bluetooth/0.0.15:
+ resolution: {integrity: sha512-w7hEHXnPMEZ+4nGKl/KDRVpxkwYxYExuHOYXyzIzCDzEZ9ZCGMAewulr9IqJu2LR4N37fcnb1XVeuZ09qgOxhA==}
+ dev: true
+
/@types/yargs-parser/21.0.0:
resolution: {integrity: sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==}
dev: true
@@ -3319,6 +3481,17 @@ packages:
eslint-visitor-keys: 3.3.0
dev: true
+ /@vitejs/plugin-vue/3.1.2_vite@3.1.4+vue@3.2.40:
+ resolution: {integrity: sha512-3zxKNlvA3oNaKDYX0NBclgxTQ1xaFdL7PzwF6zj9tGFziKwmBa3Q/6XcJQxudlT81WxDjEhHmevvIC4Orc1LhQ==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ vite: ^3.0.0
+ vue: ^3.2.25
+ dependencies:
+ vite: 3.1.4
+ vue: 3.2.40
+ dev: true
+
/@vitest/coverage-c8/0.23.4_y2hohvmcqnhseytaw4yjcnsnkm:
resolution: {integrity: sha512-jmD00a5DQH9gu9K+YdvVhcMuv2CzHvU4gCnySS40Ec5hKlXtlCzRfNHl00VnhfuBeaQUmaQYe60BLT413HyDdg==}
dependencies:
@@ -3343,6 +3516,118 @@ packages:
sirv: 2.0.2
dev: true
+ /@vue/compiler-core/3.2.40:
+ resolution: {integrity: sha512-2Dc3Stk0J/VyQ4OUr2yEC53kU28614lZS+bnrCbFSAIftBJ40g/2yQzf4mPBiFuqguMB7hyHaujdgZAQ67kZYA==}
+ dependencies:
+ '@babel/parser': 7.19.1
+ '@vue/shared': 3.2.40
+ estree-walker: 2.0.2
+ source-map: 0.6.1
+ dev: true
+
+ /@vue/compiler-dom/3.2.40:
+ resolution: {integrity: sha512-OZCNyYVC2LQJy4H7h0o28rtk+4v+HMQygRTpmibGoG9wZyomQiS5otU7qo3Wlq5UfHDw2RFwxb9BJgKjVpjrQw==}
+ dependencies:
+ '@vue/compiler-core': 3.2.40
+ '@vue/shared': 3.2.40
+ dev: true
+
+ /@vue/compiler-sfc/3.2.40:
+ resolution: {integrity: sha512-tzqwniIN1fu1PDHC3CpqY/dPCfN/RN1thpBC+g69kJcrl7mbGiHKNwbA6kJ3XKKy8R6JLKqcpVugqN4HkeBFFg==}
+ dependencies:
+ '@babel/parser': 7.19.1
+ '@vue/compiler-core': 3.2.40
+ '@vue/compiler-dom': 3.2.40
+ '@vue/compiler-ssr': 3.2.40
+ '@vue/reactivity-transform': 3.2.40
+ '@vue/shared': 3.2.40
+ estree-walker: 2.0.2
+ magic-string: 0.25.9
+ postcss: 8.4.16
+ source-map: 0.6.1
+ dev: true
+
+ /@vue/compiler-ssr/3.2.40:
+ resolution: {integrity: sha512-80cQcgasKjrPPuKcxwuCx7feq+wC6oFl5YaKSee9pV3DNq+6fmCVwEEC3vvkf/E2aI76rIJSOYHsWSEIxK74oQ==}
+ dependencies:
+ '@vue/compiler-dom': 3.2.40
+ '@vue/shared': 3.2.40
+ dev: true
+
+ /@vue/devtools-api/6.4.3:
+ resolution: {integrity: sha512-9WCRwdROJvWcHAdyrR7SZMM/qUvllDZnpndHXokThkUsjnJ2xe4/pvsH9FZrxFe22L+JmDKczL79HjLJ7DK9rg==}
+ dev: true
+
+ /@vue/reactivity-transform/3.2.40:
+ resolution: {integrity: sha512-HQUCVwEaacq6fGEsg2NUuGKIhUveMCjOk8jGHqLXPI2w6zFoPrlQhwWEaINTv5kkZDXKEnCijAp+4gNEHG03yw==}
+ dependencies:
+ '@babel/parser': 7.19.1
+ '@vue/compiler-core': 3.2.40
+ '@vue/shared': 3.2.40
+ estree-walker: 2.0.2
+ magic-string: 0.25.9
+ dev: true
+
+ /@vue/reactivity/3.2.40:
+ resolution: {integrity: sha512-N9qgGLlZmtUBMHF9xDT4EkD9RdXde1Xbveb+niWMXuHVWQP5BzgRmE3SFyUBBcyayG4y1lhoz+lphGRRxxK4RA==}
+ dependencies:
+ '@vue/shared': 3.2.40
+ dev: true
+
+ /@vue/runtime-core/3.2.40:
+ resolution: {integrity: sha512-U1+rWf0H8xK8aBUZhnrN97yoZfHbjgw/bGUzfgKPJl69/mXDuSg8CbdBYBn6VVQdR947vWneQBFzdhasyzMUKg==}
+ dependencies:
+ '@vue/reactivity': 3.2.40
+ '@vue/shared': 3.2.40
+ dev: true
+
+ /@vue/runtime-dom/3.2.40:
+ resolution: {integrity: sha512-AO2HMQ+0s2+MCec8hXAhxMgWhFhOPJ/CyRXnmTJ6XIOnJFLrH5Iq3TNwvVcODGR295jy77I6dWPj+wvFoSYaww==}
+ dependencies:
+ '@vue/runtime-core': 3.2.40
+ '@vue/shared': 3.2.40
+ csstype: 2.6.21
+ dev: true
+
+ /@vue/server-renderer/3.2.40_vue@3.2.40:
+ resolution: {integrity: sha512-gtUcpRwrXOJPJ4qyBpU3EyxQa4EkV8I4f8VrDePcGCPe4O/hd0BPS7v9OgjIQob6Ap8VDz9G+mGTKazE45/95w==}
+ peerDependencies:
+ vue: 3.2.40
+ dependencies:
+ '@vue/compiler-ssr': 3.2.40
+ '@vue/shared': 3.2.40
+ vue: 3.2.40
+ dev: true
+
+ /@vue/shared/3.2.40:
+ resolution: {integrity: sha512-0PLQ6RUtZM0vO3teRfzGi4ltLUO5aO+kLgwh4Um3THSR03rpQWLTuRCkuO5A41ITzwdWeKdPHtSARuPkoo5pCQ==}
+ dev: true
+
+ /@vueuse/core/9.3.0_vue@3.2.40:
+ resolution: {integrity: sha512-64Rna8IQDWpdrJxgitDg7yv1yTp41ZmvV8zlLEylK4QQLWAhz1OFGZDPZ8bU4lwcGgbEJ2sGi2jrdNh4LttUSQ==}
+ dependencies:
+ '@types/web-bluetooth': 0.0.15
+ '@vueuse/metadata': 9.3.0
+ '@vueuse/shared': 9.3.0_vue@3.2.40
+ vue-demi: 0.13.11_vue@3.2.40
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+ dev: true
+
+ /@vueuse/metadata/9.3.0:
+ resolution: {integrity: sha512-GnnfjbzIPJIh9ngL9s9oGU1+Hx/h5/KFqTfJykzh/1xjaHkedV9g0MASpdmPZIP+ynNhKAcEfA6g5i8KXwtoMA==}
+ dev: true
+
+ /@vueuse/shared/9.3.0_vue@3.2.40:
+ resolution: {integrity: sha512-caGUWLY0DpPC6l31KxeUy6vPVNA0yKxx81jFYLoMpyP6cF84FG5Dkf69DfSUqL57wX8JcUkJDMnQaQIZPWFEQQ==}
+ dependencies:
+ vue-demi: 0.13.11_vue@3.2.40
+ transitivePeerDependencies:
+ - '@vue/composition-api'
+ - vue
+ dev: true
+
/@wdio/config/7.16.11:
resolution: {integrity: sha512-sIk9FINQfXohuDONb8RA1uv+29XvUw6OBHfaaU7/c9gfKiOWiRczdfiLqfySZRwYgEgNhzCw5vHIogTry1h+xQ==}
engines: {node: '>=12.0.0'}
@@ -3516,6 +3801,25 @@ packages:
uri-js: 4.4.1
dev: true
+ /algoliasearch/4.14.2:
+ resolution: {integrity: sha512-ngbEQonGEmf8dyEh5f+uOIihv4176dgbuOZspiuhmTTBRBuzWu3KCGHre6uHj5YyuC7pNvQGzB6ZNJyZi0z+Sg==}
+ dependencies:
+ '@algolia/cache-browser-local-storage': 4.14.2
+ '@algolia/cache-common': 4.14.2
+ '@algolia/cache-in-memory': 4.14.2
+ '@algolia/client-account': 4.14.2
+ '@algolia/client-analytics': 4.14.2
+ '@algolia/client-common': 4.14.2
+ '@algolia/client-personalization': 4.14.2
+ '@algolia/client-search': 4.14.2
+ '@algolia/logger-common': 4.14.2
+ '@algolia/logger-console': 4.14.2
+ '@algolia/requester-browser-xhr': 4.14.2
+ '@algolia/requester-common': 4.14.2
+ '@algolia/requester-node-http': 4.14.2
+ '@algolia/transporter': 4.14.2
+ dev: true
+
/amdefine/1.0.1:
resolution: {integrity: sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==}
engines: {node: '>=0.4.2'}
@@ -3932,6 +4236,10 @@ packages:
- supports-color
dev: true
+ /body-scroll-lock/4.0.0-beta.0:
+ resolution: {integrity: sha512-a7tP5+0Mw3YlUJcGAKUqIBkYYGlYxk2fnCasq/FUph1hadxlTRjF+gAcZksxANnaMnALjxEddmSi/H3OR8ugcQ==}
+ dev: true
+
/body/5.1.0:
resolution: {integrity: sha512-chUsBxGRtuElD6fmw1gHLpvnKdVLK302peeFa9ZqAEk8TyzZ3fygLyUEDDPTJvL9+Bor0dIwn6ePOsRM2y0zQQ==}
dependencies:
@@ -4797,6 +5105,10 @@ packages:
cssom: 0.3.8
dev: true
+ /csstype/2.6.21:
+ resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==}
+ dev: true
+
/cypress-image-snapshot/4.0.1_cypress@10.8.0:
resolution: {integrity: sha512-PBpnhX/XItlx3/DAk5ozsXQHUi72exybBNH5Mpqj1DVmjq+S5Jd9WE5CRa4q5q0zuMZb2V2VpXHth6MjFpgj9Q==}
engines: {node: '>=8'}
@@ -5669,6 +5981,11 @@ packages:
ansi-colors: 4.1.3
dev: true
+ /entities/3.0.1:
+ resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==}
+ engines: {node: '>=0.12'}
+ dev: true
+
/entities/4.4.0:
resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==}
engines: {node: '>=0.12'}
@@ -6313,6 +6630,10 @@ packages:
engines: {node: '>=4.0'}
dev: true
+ /estree-walker/2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+ dev: true
+
/esutils/1.0.0:
resolution: {integrity: sha512-x/iYH53X3quDwfHRz4y8rn4XcEwwCJeWsul9pF1zldMbGtgOtMNBEOuYWwB1EQlK2LRa1fev3YAgym/RElp5Cg==}
engines: {node: '>=0.10.0'}
@@ -8645,6 +8966,12 @@ packages:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
dev: true
+ /linkify-it/4.0.1:
+ resolution: {integrity: sha512-C7bfi1UZmoj8+PQx22XyeXCuBlokoyWQL5pWSP+EI6nzRylyThouddufc2c1NDIcP9k5agmN9fLpA7VNJfIiqw==}
+ dependencies:
+ uc.micro: 1.0.6
+ dev: true
+
/lint-staged/13.0.3:
resolution: {integrity: sha512-9hmrwSCFroTSYLjflGI8Uk+GWAwMB4OlpU4bMJEAT5d/llQwtYKoim4bLOyLCuWFAhWEupE0vkIFqtw/WIsPug==}
engines: {node: ^14.13.1 || >=16.0.0}
@@ -8839,6 +9166,12 @@ packages:
yallist: 4.0.0
dev: true
+ /magic-string/0.25.9:
+ resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
+ dependencies:
+ sourcemap-codec: 1.4.8
+ dev: true
+
/make-dir/3.1.0:
resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
engines: {node: '>=8'}
@@ -8886,6 +9219,17 @@ packages:
resolution: {integrity: sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==}
dev: true
+ /markdown-it/13.0.1:
+ resolution: {integrity: sha512-lTlxriVoy2criHP0JKRhO2VDG9c2ypWCsT237eDiLqi09rmbKoUetyGHq2uOIRoRS//kfoJckS0eUzzkDR+k2Q==}
+ hasBin: true
+ dependencies:
+ argparse: 2.0.1
+ entities: 3.0.1
+ linkify-it: 4.0.1
+ mdurl: 1.0.1
+ uc.micro: 1.0.6
+ dev: true
+
/markdown-table/1.1.3:
resolution: {integrity: sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==}
dev: true
@@ -10041,6 +10385,10 @@ packages:
source-map-js: 1.0.2
dev: true
+ /preact/10.11.0:
+ resolution: {integrity: sha512-Fk6+vB2kb6mSJfDgODq0YDhMfl0HNtK5+Uc9QqECO4nlyPAQwCI+BKyWO//idA7ikV7o+0Fm6LQmNuQi1wXI1w==}
+ dev: true
+
/prelude-ls/1.1.2:
resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==}
engines: {node: '>= 0.8.0'}
@@ -10907,6 +11255,14 @@ packages:
resolution: {integrity: sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==}
dev: true
+ /shiki/0.11.1:
+ resolution: {integrity: sha512-EugY9VASFuDqOexOgXR18ZV+TbFrQHeCpEYaXamO+SZlsnT/2LxuLBX25GGtIrwaEVFXUAbUQ601SWE2rMwWHA==}
+ dependencies:
+ jsonc-parser: 3.2.0
+ vscode-oniguruma: 1.6.2
+ vscode-textmate: 6.0.0
+ dev: true
+
/side-channel/1.0.4:
resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
dependencies:
@@ -11071,6 +11427,10 @@ packages:
engines: {node: '>=0.10.0'}
dev: true
+ /sourcemap-codec/1.4.8:
+ resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
+ dev: true
+
/space-separated-tokens/1.1.5:
resolution: {integrity: sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==}
dev: true
@@ -11850,6 +12210,10 @@ packages:
hasBin: true
dev: true
+ /uc.micro/1.0.6:
+ resolution: {integrity: sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==}
+ dev: true
+
/uglify-js/3.17.1:
resolution: {integrity: sha512-+juFBsLLw7AqMaqJ0GFvlsGZwdQfI2ooKQB39PSBgMnMakcFosi9O8jCwE+2/2nMNcc0z63r9mwjoDG8zr+q0Q==}
engines: {node: '>=0.8.0'}
@@ -12304,6 +12668,80 @@ packages:
fsevents: 2.3.2
dev: true
+ /vite/3.1.4:
+ resolution: {integrity: sha512-JoQI08aBjY9lycL7jcEq4p9o1xUjq5aRvdH4KWaXtkSx7e7RpAh9D3IjzDWRD4Fg44LS3oDAIOG/Kq1L+82psA==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ hasBin: true
+ peerDependencies:
+ less: '*'
+ sass: '*'
+ stylus: '*'
+ terser: ^5.4.0
+ peerDependenciesMeta:
+ less:
+ optional: true
+ sass:
+ optional: true
+ stylus:
+ optional: true
+ terser:
+ optional: true
+ dependencies:
+ esbuild: 0.15.8
+ postcss: 8.4.16
+ resolve: 1.22.1
+ rollup: 2.78.1
+ optionalDependencies:
+ fsevents: 2.3.2
+ dev: true
+
+ /vitepress-plugin-mermaid/2.0.8_vitepress@1.0.0-alpha.19:
+ resolution: {integrity: sha512-ywWxTeg9kMv7ZPf/igCBF4ZHhWZAyRtbPnA12ICQuNK2AMp7r5IHOfnuX1EJQf8gNdsh8bcvvSvm8Ll92fdOTw==}
+ peerDependencies:
+ mermaid: ^8.0.0 || ^9.0.0
+ vite-plugin-md: ^0.20.4
+ vitepress: ^0.21.6 || ^1.0.0 || ^1.0.0-alpha
+ dependencies:
+ vitepress: 1.0.0-alpha.19
+ dev: true
+
+ /vitepress-plugin-search/1.0.4-alpha.11_pva2cdrgfgaiwbwst2xhmwggw4:
+ resolution: {integrity: sha512-fKJIpPj6QGQeXda31Dx5f9DtCYnPVHKQVsOUpnJOzahWHPPgGofslwwvwaeRMWIGvpslxi/m4RVK6C+ydqKukA==}
+ engines: {node: ^14.13.1 || ^16.7.0 || >=18}
+ peerDependencies:
+ vite: 2 || 3
+ vitepress: ^1.0.0-alpha.13
+ vue: '3'
+ dependencies:
+ vite: 3.1.3
+ vitepress: 1.0.0-alpha.19
+ dev: true
+
+ /vitepress/1.0.0-alpha.19:
+ resolution: {integrity: sha512-0FIUZB6JGXio7SELDDUkyQoMjmO/UAXqDXmznzOsBKsdZ3EHlyb6NaP/V/BMfN5S8+GV88ScbIL0jd/pDzkLBg==}
+ hasBin: true
+ dependencies:
+ '@docsearch/css': 3.2.1
+ '@docsearch/js': 3.2.1
+ '@vitejs/plugin-vue': 3.1.2_vite@3.1.4+vue@3.2.40
+ '@vue/devtools-api': 6.4.3
+ '@vueuse/core': 9.3.0_vue@3.2.40
+ body-scroll-lock: 4.0.0-beta.0
+ shiki: 0.11.1
+ vite: 3.1.4
+ vue: 3.2.40
+ transitivePeerDependencies:
+ - '@algolia/client-search'
+ - '@types/react'
+ - '@vue/composition-api'
+ - less
+ - react
+ - react-dom
+ - sass
+ - stylus
+ - terser
+ dev: true
+
/vitest/0.23.4_y2hohvmcqnhseytaw4yjcnsnkm:
resolution: {integrity: sha512-iukBNWqQAv8EKDBUNntspLp9SfpaVFbmzmM0sNcnTxASQZMzRw3PsM6DMlsHiI+I6GeO5/sYDg3ecpC+SNFLrQ==}
engines: {node: '>=v14.16.0'}
@@ -12378,10 +12816,33 @@ packages:
resolution: {integrity: sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==}
dev: true
+ /vscode-oniguruma/1.6.2:
+ resolution: {integrity: sha512-KH8+KKov5eS/9WhofZR8M8dMHWN2gTxjMsG4jd04YhpbPR91fUj7rYQ2/XjeHCJWbg7X++ApRIU9NUwM2vTvLA==}
+ dev: true
+
+ /vscode-textmate/6.0.0:
+ resolution: {integrity: sha512-gu73tuZfJgu+mvCSy4UZwd2JXykjK9zAZsfmDeut5dx/1a7FeTk0XwJsSuqQn+cuMCGVbIBfl+s53X4T19DnzQ==}
+ dev: true
+
/vscode-uri/3.0.6:
resolution: {integrity: sha512-fmL7V1eiDBFRRnu+gfRWTzyPpNIHJTc4mWnFkwBUmO9U3KPgJAmTx7oxi2bl/Rh6HLdU7+4C9wlj0k2E4AdKFQ==}
dev: true
+ /vue-demi/0.13.11_vue@3.2.40:
+ resolution: {integrity: sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==}
+ engines: {node: '>=12'}
+ hasBin: true
+ requiresBuild: true
+ peerDependencies:
+ '@vue/composition-api': ^1.0.0-rc.1
+ vue: ^3.0.0-0 || ^2.6.0
+ peerDependenciesMeta:
+ '@vue/composition-api':
+ optional: true
+ dependencies:
+ vue: 3.2.40
+ dev: true
+
/vue-template-compiler/2.7.10:
resolution: {integrity: sha512-QO+8R9YRq1Gudm8ZMdo/lImZLJVUIAM8c07Vp84ojdDAf8HmPJc7XB556PcXV218k2AkKznsRz6xB5uOjAC4EQ==}
dependencies:
@@ -12389,6 +12850,16 @@ packages:
he: 1.2.0
dev: true
+ /vue/3.2.40:
+ resolution: {integrity: sha512-1mGHulzUbl2Nk3pfvI5aXYYyJUs1nm4kyvuz38u4xlQkLUn1i2R7nDbI4TufECmY8v1qNBHYy62bCaM+3cHP2A==}
+ dependencies:
+ '@vue/compiler-dom': 3.2.40
+ '@vue/compiler-sfc': 3.2.40
+ '@vue/runtime-dom': 3.2.40
+ '@vue/server-renderer': 3.2.40_vue@3.2.40
+ '@vue/shared': 3.2.40
+ dev: true
+
/w3c-hr-time/1.0.2:
resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==}
dependencies:
diff --git a/vdocs/.vitepress/config.ts b/vdocs/.vitepress/config.ts
new file mode 100644
index 0000000000..d3cdccc9a4
--- /dev/null
+++ b/vdocs/.vitepress/config.ts
@@ -0,0 +1,166 @@
+import { version } from '../../package.json';
+import ExampleMarkdown from './mermaid-markdown-all';
+import { defineConfig } from 'vitepress';
+import { update } from 'lodash';
+
+export default defineConfig({
+ lang: 'en-US',
+ title: 'Mermaid',
+ description: 'Create diagrams and visualizations using text and code.',
+ base: '/mermaid-docs/',
+ lastUpdated: true,
+ markdown: ExampleMarkdown,
+ themeConfig: {
+ nav: nav(),
+
+ sidebar: {
+ '/': sidebarAll(),
+ // "/intro/": sidebarIntro(),
+ // "/syntax/": sidebarSyntax(),
+ // "/config": sidebarConfig(),
+ // "/misc/": sidebarMisc(),
+ // "/community/": sidebarCommunity(),
+ },
+
+ // TODO: update to mermaid
+ editLink: {
+ pattern: 'https://github.com/emersonbottero/mermaid/edit/develop/vdocs/:path',
+ text: 'Edit this page on GitHub',
+ },
+
+ socialLinks: [{ icon: 'github', link: 'https://github.com/emersonbottero/mermaid' }],
+ },
+});
+
+function nav() {
+ return [
+ { text: 'Intro', link: '/intro/', activeMatch: '/intro/' },
+ {
+ text: 'Configuration',
+ link: '/config/Tutorials',
+ activeMatch: '/config/',
+ },
+ { text: 'Syntax', link: '/syntax/classDiagram', activeMatch: '/syntax/' },
+ { text: 'Misc', link: '/misc/integrations', activeMatch: '/misc/' },
+ {
+ text: 'Community',
+ link: '/community/n00b-overview',
+ activeMatch: '/community/',
+ },
+ {
+ text: version,
+ items: [
+ {
+ text: 'Changelog',
+ link: 'https://github.com/mermaid-js/mermaid/blob/develop/CHANGELOG.md',
+ },
+ {
+ text: 'Contributing',
+ link: 'https://github.com/knsv/mermaid/issues/866',
+ },
+ ],
+ },
+ {
+ text: 'π» Live Editor',
+ link: '/edit',
+ },
+ ];
+}
+
+function sidebarAll() {
+ return [
+ {
+ text: 'π Introduction',
+ collapsible: true,
+ items: [
+ { text: 'About Mermaid', link: '/intro/' },
+ { text: 'Deployment', link: '/intro/n00b-gettingStarted' },
+ {
+ text: 'Syntax and Configuration',
+ link: '/intro/n00b-syntaxReference',
+ },
+ ],
+ },
+ ...sidebarSyntax(),
+ ...sidebarConfig(),
+ ...sidebarMisc(),
+ ...sidebarCommunity(),
+ ];
+}
+
+function sidebarSyntax() {
+ return [
+ {
+ text: 'π Diagram Syntax',
+ collapsible: true,
+ items: [
+ { text: 'Flowchart', link: '/syntax/flowchart' },
+ { text: 'Sequence Diagram', link: '/syntax/sequenceDiagram' },
+ { text: 'Class Diagram', link: '/syntax/classDiagram' },
+ { text: 'State Diagram', link: '/syntax/stateDiagram' },
+ {
+ text: 'Entity Relationship Diagram',
+ link: '/syntax/entityRelationshipDiagram',
+ },
+ { text: 'User Journey', link: '/syntax/userJourney' },
+ { text: 'Gantt', link: '/syntax/gantt' },
+ { text: 'Pie Chart', link: '/syntax/pie' },
+ { text: 'Requirement Diagram', link: '/syntax/requirementDiagram' },
+ { text: 'Gitgraph (Git) Diagram π₯', link: '/syntax/gitGraph' },
+ { text: 'C4C Diagram (Context) Diagram π¦Ίβ οΈ', link: '/syntax/c4c' },
+ { text: 'Other Examples', link: '/syntax/examples' },
+ ],
+ },
+ ];
+}
+
+function sidebarConfig() {
+ return [
+ {
+ text: 'βοΈ Deployment and Configuration',
+ collapsible: true,
+ items: [
+ { text: 'Tutorials', link: '/config/Tutorials' },
+ { text: 'API-Usage', link: '/config/usage' },
+ { text: 'Mermaid API Configuration', link: '/config/Setup' },
+ { text: 'Directives', link: '/config/directives' },
+ { text: 'Theming', link: '/config/theming' },
+ { text: 'Accessibility', link: '/config/accessibility' },
+ { text: 'Mermaid CLI', link: '/config/mermaidCLI' },
+ { text: 'Advanced usage', link: '/config/n00b-advanced' },
+ ],
+ },
+ ];
+}
+
+function sidebarMisc() {
+ return [
+ {
+ text: 'π Misc',
+ collapsible: true,
+ items: [
+ { text: 'Use-Cases and Integrations', link: '/misc/integrations' },
+ { text: 'FAQ', link: '/misc/faq' },
+ ],
+ },
+ ];
+}
+
+function sidebarCommunity() {
+ return [
+ {
+ text: 'π Contributions and Community',
+ collapsible: true,
+ items: [
+ { text: 'Overview for Beginners', link: '/community/n00b-overview' },
+ {
+ text: 'Development and Contribution',
+ link: '/community/development',
+ },
+ { text: 'Changelog', link: '/community/CHANGELOG' },
+ { text: 'Adding Diagrams', link: '/community/newDiagram' },
+ { text: 'Security', link: '/community/security' },
+ ],
+ },
+ ];
+}
diff --git a/vdocs/.vitepress/mermaid-markdown-all.ts b/vdocs/.vitepress/mermaid-markdown-all.ts
new file mode 100644
index 0000000000..fb699e27fa
--- /dev/null
+++ b/vdocs/.vitepress/mermaid-markdown-all.ts
@@ -0,0 +1,32 @@
+import { MermaidMarkdown } from 'vitepress-plugin-mermaid';
+import shiki from 'shiki';
+
+export default {
+ config: async (md) => {
+ MermaidMarkdown(md);
+ const fence = md.renderer.rules.fence.bind(md.renderer.rules);
+
+ const highlighter = await shiki.getHighlighter({ theme: 'material-palenight' });
+
+ md.renderer.rules.fence = (tokens, index, options, env, slf) => {
+ const token = tokens[index];
+
+ if (token.info.trim() === 'mermaid-example') {
+ let code = highlighter.codeToHtml(token.content, { lang: 'mermaid' });
+ code = code.replace('#2e3440ff', 'transparent');
+ code = code.replace('#292D3E', 'transparent');
+ code =
+ '
Code: ' +
+ 'mermaid ' +
+ code +
+ '
';
+
+ // return code;
+ return `${code}
+ Render:
+ `;
+ }
+ return fence(tokens, index, options, env, slf);
+ };
+ },
+};
diff --git a/vdocs/.vitepress/theme/custom.css b/vdocs/.vitepress/theme/custom.css
new file mode 100644
index 0000000000..a158d7e6d3
--- /dev/null
+++ b/vdocs/.vitepress/theme/custom.css
@@ -0,0 +1,6 @@
+/* Use this file to add custom css */
+
+/* TODO: Remove after vitepress-plugin-search next release */
+.search-item-icon {
+ font-family: none;
+}
diff --git a/vdocs/.vitepress/theme/index.ts b/vdocs/.vitepress/theme/index.ts
new file mode 100644
index 0000000000..7093a1643d
--- /dev/null
+++ b/vdocs/.vitepress/theme/index.ts
@@ -0,0 +1,11 @@
+import DefaultTheme from 'vitepress/theme';
+import Mermaid from 'vitepress-plugin-mermaid/Mermaid.vue';
+import './custom.css';
+
+export default {
+ ...DefaultTheme,
+ enhanceApp({ app }) {
+ // register global components
+ app.component('Mermaid', Mermaid);
+ },
+};
diff --git a/vdocs/community/CHANGELOG.md b/vdocs/community/CHANGELOG.md
new file mode 100644
index 0000000000..7a75ad4e28
--- /dev/null
+++ b/vdocs/community/CHANGELOG.md
@@ -0,0 +1,1024 @@
+# Change Log
+
+All changes are in descending order, beginning with the newest (latest) version.
+
+## Unreleased
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/8.7.0...HEAD)
+
+## 8.7.0 (2020-08-09)
+
+π [Release Notes](https://github.com/mermaid-js/mermaid/releases/tag/8.7.0) |
+π [Full Changelog](https://github.com/mermaid-js/mermaid/compare/8.6.0...8.7.0)
+
+This version brings with it a system for [dynamic and integrated configuration of the diagram themes](../config/theming.md).
+The objective of this is to increase the customizability of mermaid and the ease of Styling, with the customization of themes through the `%%init%%` directive and `initialize` calls.
+
+Themes follow and build upon the Levels of Configuration and employ `directives` to modify and create custom configurations, as they were introduced in Version [8.6.0](../getting-started/8.6.0_docs.md).
+
+**These Theming Configurations, similar to directives, will also be made applicable in the Live-Editor, for easier styling.**
+
+### Site-wide Themes
+
+Site-wide themes are still declared via `initialize` by site owners.
+
+Example of `Initalize` call setting `theme` to `base`:
+
+```javascript
+mermaidAPI.initialize({
+ securityLevel: 'loose',
+ theme: 'base',
+});
+```
+
+**Notes**: Only site owners can use the `mermaidAPI.initialize` call, to set values. Site-Users will have to use `%%init%%` to modify or create the theme for their diagrams.
+
+### Themes at the Local or Current Level
+
+When Generating a diagram using on a webpage that supports mermaid.
+It is also possible to override site-wide theme settings locally, for a specific diagram, using directives, as long as it is not prohibited by the `secure` array.
+
+**Following is an example:**
+
+```mmd
+%%{init: {'theme':'base'}}%%
+ graph TD
+ a --> b
+```
+
+### Making a Custom Theme with `themeVariables`
+
+The easiest way to make a custom theme is to start with the base theme, and just modify theme variables through `themeVariables`, via `%%init%%`.
+
+| Parameter | Description | Type | Required | Objects contained |
+| -------------- | ------------------------------------------------------------------ | ----- | -------- | ---------------------------------- |
+| themeVariables | Array containing objects, modifiable with the `%%init%%` directive | Array | Required | primaryColor, lineColor, textColor |
+
+Here is an example of overriding `primaryColor` and giving everything a different look, using `%%init%%`.
+
+```mmd
+%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#ff0000'}}}%%
+ graph TD
+ A[Christmas] -->|Get money| B(Go shopping)
+ B --> C{Let me think}
+ B --> G[/Another/]
+ C ==>|One| D[Laptop]
+ C -->|Two| E[iPhone]
+ C -->|Three| F[fa:fa-car Car]
+ subgraph section
+ C
+ D
+ E
+ F
+ G
+ end
+```
+
+**Notes:**
+Leaving it empty will set all variable values to default.
+
+## 8.6.0 (2020-07-13)
+
+π [Release Notes](https://github.com/mermaid-js/mermaid/releases/tag/8.6.0)
+
+[Version 8.6.0](../getting-started/8.6.0_docs.md) introduces New Configuration Protocols and Directives and a Beta for the [New Mermaid Live-Editor](https://mermaid-js.github.io/docs/mermaid-live-editor-beta/#/edit/eyJjb2RlIjoiJSV7aW5pdDoge1widGhlbWVcIjogXCJmb3Jlc3RcIiwgXCJsb2dMZXZlbFwiOiAxIH19JSVcbmdyYXBoIFREXG4gIEFbQ2hyaXN0bWFzXSAtLT58R2V0IG1vbmV5fCBCKEdvIHNob3BwaW5nKVxuICBCIC0tPiBDe0xldCBtZSB0aGlua31cbiAgQyAtLT58T25lfCBEW0xhcHRvcF1cbiAgQyAtLT58VHdvfCBFW2lQaG9uZV1cbiAgQyAtLT58VGhyZWV8IEZbZmE6ZmEtY2FyIENhcl1cblx0XHQiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGFyayJ9fQ)
+
+**With version 8.6.0 comes the release of directives for mermaid, a new system for modifying configurations, with the aim of establishing centralized, sane defaults and simple implementation.**
+
+Directives allow for a diagram specific overriding of config, as it has been discussed in Configurations.
+This allows site users to input modifications to config alongside diagram definitions, when creating diagrams on a private webpage that supports Mermaid.
+
+## 8.5.0 (2020-04-11)
+
+π [Release Notes](https://github.com/mermaid-js/mermaid/releases/tag/untagged-31c93788afe260d914bb)
+
+This version introduces New diagrams!
+
+**New diagrams in 8.5**
+
+With version 8.5 there are some bug fixes and enhancements, plus a new diagram type, entity relationship diagrams.
+
+![Image showing the new ER diagram type](./img/er.png)
+
+## 8.2.0 (2019-07-17)
+
+π·οΈ [Tag](https://github.com/mermaid-js/mermaid/tree/8.2.0)
+
+Version 8.2.0, introduces a security improvement.
+
+A `securityLevel` configuration has to first be cleared, `securityLevel` sets the level of trust for the parsed diagrams and limits click functionality.
+This was introduced in version 8.2 as a security improvement, aimed at preventing malicious use.
+
+### securityLevel
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | --------------------------------- | ------ | -------- | ------------------------- |
+| securitylevel | Level of trust for parsed diagram | String | Required | Strict, Loose, antiscript |
+
+**Notes:**
+
+- **strict**: (**default**) tags in text are encoded, click functionality is disabled
+- **loose**: tags in text are allowed, click functionality is enabled
+- **antiscript**: html tags in text are allowed, (only script element is removed), click functionality is enabled
+
+β οΈ **Note**: This changes the default behaviour of mermaid so that after upgrade to 8.2, if the `securityLevel` is not configured, tags in flowcharts are encoded as tags and clicking is prohibited.
+
+If you are taking responsibility for the diagram source security you can set the `securityLevel` to a value of your choosing.
+By doing this clicks and tags are again allowed.
+
+### To change `securityLevel` with `mermaidAPI.initialize`:
+
+```javascript
+mermaidAPI.initialize({
+ securityLevel: 'loose',
+});
+```
+
+**Closed issues:**
+
+- please add tag for 8.0.0 release [\#863](https://github.com/knsv/mermaid/issues/863)
+- classDiagram breaks on any edit [\#858](https://github.com/knsv/mermaid/issues/858)
+
+## [8.1.0](https://github.com/knsv/mermaid/tree/8.1.0) (2019-06-25)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/7.0.5...8.1.0)
+
+**Implemented enhancements:**
+
+- Theme for dark background [\#301](https://github.com/knsv/mermaid/issues/301)
+- \[Feature request\] gantt diagram axis format [\#269](https://github.com/knsv/mermaid/issues/269)
+- Implement render function for server side rendering using phantomjs [\#169](https://github.com/knsv/mermaid/issues/169)
+
+**Fixed bugs:**
+
+- mermaid -v filename.mmd gives You must specify at least one source file. [\#328](https://github.com/knsv/mermaid/issues/328)
+- Not Able to See Labels even htmlLabels:false added [\#268](https://github.com/knsv/mermaid/issues/268)
+
+**Closed issues:**
+
+- Gantt and sequence diagram do not render [\#853](https://github.com/knsv/mermaid/issues/853)
+- margins around flowchart are not balanced [\#852](https://github.com/knsv/mermaid/issues/852)
+- Smaller bundles [\#843](https://github.com/knsv/mermaid/issues/843)
+- unicode in labels [\#776](https://github.com/knsv/mermaid/issues/776)
+- Hard-changing drawing of arrows per edge type [\#775](https://github.com/knsv/mermaid/issues/775)
+- SequenceDiagram wrong [\#773](https://github.com/knsv/mermaid/issues/773)
+- Render mermaid on github pages with simple code [\#772](https://github.com/knsv/mermaid/issues/772)
+- FlowChart - large space between text and the image [\#754](https://github.com/knsv/mermaid/issues/754)
+- Class Diagram Issues when using Mermaid in Stackedit [\#748](https://github.com/knsv/mermaid/issues/748)
+- Multi-platform CI [\#744](https://github.com/knsv/mermaid/issues/744)
+- gantt: sections can't have a colon [\#742](https://github.com/knsv/mermaid/issues/742)
+- Yarn build does not add mermaid.min.css to dist [\#732](https://github.com/knsv/mermaid/issues/732)
+- Is there a grammar / keyword / more than just the basic examples? [\#718](https://github.com/knsv/mermaid/issues/718)
+- Click event and react component [\#717](https://github.com/knsv/mermaid/issues/717)
+- Long text going outside the box [\#706](https://github.com/knsv/mermaid/issues/706)
+- How to migrate from yUML to mermaid? [\#704](https://github.com/knsv/mermaid/issues/704)
+- Issue on Dynamic Creation in PHP [\#690](https://github.com/knsv/mermaid/issues/690)
+- `click "\#target"` and `click "http://url"` should create regular links [\#689](https://github.com/knsv/mermaid/issues/689)
+- Support Chinese punctuation [\#687](https://github.com/knsv/mermaid/issues/687)
+- \[Question\] Proper way to install on Mac? [\#681](https://github.com/knsv/mermaid/issues/681)
+- Has Mermaid a graphical interface to make diagrams? [\#668](https://github.com/knsv/mermaid/issues/668)
+- mermaid installation on debian [\#649](https://github.com/knsv/mermaid/issues/649)
+- "Cannot activate" in sequenceDiagram [\#647](https://github.com/knsv/mermaid/issues/647)
+- Link \("click" statement\) in flowchart does not work in exported SVG [\#646](https://github.com/knsv/mermaid/issues/646)
+- How to pass styling [\#639](https://github.com/knsv/mermaid/issues/639)
+- The live editor cant show seq diagram with notes for 8.0.0-alpha.3 [\#638](https://github.com/knsv/mermaid/issues/638)
+- import mermaid.css with ES6 + NPM [\#634](https://github.com/knsv/mermaid/issues/634)
+- Actor line cuts through other elements [\#633](https://github.com/knsv/mermaid/issues/633)
+- Graph TD line out of the picture \(left side\) [\#630](https://github.com/knsv/mermaid/issues/630)
+- Flowchart labels appear "cutoff" [\#628](https://github.com/knsv/mermaid/issues/628)
+- Uncaught TypeError: \_.constant is not a function \(mermaid.js\) [\#626](https://github.com/knsv/mermaid/issues/626)
+- Missing tags and releases for newer versions [\#623](https://github.com/knsv/mermaid/issues/623)
+- Mermaid and Leo / Leo Vue [\#622](https://github.com/knsv/mermaid/issues/622)
+- mermaidAPI gantt Vue.js [\#621](https://github.com/knsv/mermaid/issues/621)
+- Gantt sections are not separated by colors - Fix: set numberSectionStyles to 4 instead of 3 [\#620](https://github.com/knsv/mermaid/issues/620)
+- how to get mermaidAPI? [\#617](https://github.com/knsv/mermaid/issues/617)
+- Error in startOnLoad documentation? [\#616](https://github.com/knsv/mermaid/issues/616)
+- Example export to SVG generates error [\#614](https://github.com/knsv/mermaid/issues/614)
+- The new online editor does not support previously generated links [\#613](https://github.com/knsv/mermaid/issues/613)
+- Grammar / Syntax documentation for flowcharts [\#607](https://github.com/knsv/mermaid/issues/607)
+- Mermaid does not work with d3.js [\#606](https://github.com/knsv/mermaid/issues/606)
+- Why does this code's flowchart lines get cut-off on screen? [\#604](https://github.com/knsv/mermaid/issues/604)
+- click keyword does not fire my callback \(on the demo Website too\) [\#603](https://github.com/knsv/mermaid/issues/603)
+- Online Editor fails to show exported SVG [\#601](https://github.com/knsv/mermaid/issues/601)
+- Just saying thanks! [\#597](https://github.com/knsv/mermaid/issues/597)
+- stylesheet crashed with other library like abcjs [\#596](https://github.com/knsv/mermaid/issues/596)
+- Missing connection [\#594](https://github.com/knsv/mermaid/issues/594)
+- How to use mermaid on node.js restful api? [\#593](https://github.com/knsv/mermaid/issues/593)
+- Remove status code [\#589](https://github.com/knsv/mermaid/issues/589)
+- Golang based editor [\#588](https://github.com/knsv/mermaid/issues/588)
+- sequenceDiagram -\> notetext css font is hardcoded [\#587](https://github.com/knsv/mermaid/issues/587)
+- Multiple graph in the live editor [\#586](https://github.com/knsv/mermaid/issues/586)
+- All \ elements in page are colored black [\#584](https://github.com/knsv/mermaid/issues/584)
+- Styling: classes aren't applied to elements. [\#582](https://github.com/knsv/mermaid/issues/582)
+- Rounded connections [\#580](https://github.com/knsv/mermaid/issues/580)
+- Arrows are not being shown correctly in the dark theme [\#578](https://github.com/knsv/mermaid/issues/578)
+- The documentation for CLI seems outdated. [\#572](https://github.com/knsv/mermaid/issues/572)
+- No effect of click event:can not open link [\#571](https://github.com/knsv/mermaid/issues/571)
+- Text colors are not correct in VSCODE [\#570](https://github.com/knsv/mermaid/issues/570)
+- Nodes aren't aligned properly \(just need an explanation\) [\#568](https://github.com/knsv/mermaid/issues/568)
+- setting margin around figure in R [\#567](https://github.com/knsv/mermaid/issues/567)
+- Arrows should Come out in upward and Downward direction from decision Node [\#566](https://github.com/knsv/mermaid/issues/566)
+- TypeError: Cannot read property 'select' of undefined [\#563](https://github.com/knsv/mermaid/issues/563)
+- A little bug [\#557](https://github.com/knsv/mermaid/issues/557)
+- Japanese text appears garbled [\#554](https://github.com/knsv/mermaid/issues/554)
+- classdiagram not works in mermaid live_editor [\#553](https://github.com/knsv/mermaid/issues/553)
+- font awesome in link text? [\#546](https://github.com/knsv/mermaid/issues/546)
+- q: heard of the cosmogol standard? [\#545](https://github.com/knsv/mermaid/issues/545)
+- Arrow heads missing \(cli, 7.0.3\) [\#544](https://github.com/knsv/mermaid/issues/544)
+- No Edge Boxes if useHtmlLabels=false [\#541](https://github.com/knsv/mermaid/issues/541)
+- how to change mermaid text color or line text block colorοΌ [\#534](https://github.com/knsv/mermaid/issues/534)
+- FlowChart visualization broken when downloading from live editor [\#533](https://github.com/knsv/mermaid/issues/533)
+- Can't get flowchart to render paths at the top of the diagram; I even tried the online editor and that shows the same issue. Thoughts? [\#532](https://github.com/knsv/mermaid/issues/532)
+- live editor make browser\(safari on macOS&iOS\) not longer respond [\#531](https://github.com/knsv/mermaid/issues/531)
+- css classes need a prefix/namespace [\#527](https://github.com/knsv/mermaid/issues/527)
+- input activate/deactivate cause safari unresponding [\#521](https://github.com/knsv/mermaid/issues/521)
+- Cannot Render the Mermaid Graph to PDF ? [\#520](https://github.com/knsv/mermaid/issues/520)
+- clicking links works from inset in subgraph but not from nodes [\#516](https://github.com/knsv/mermaid/issues/516)
+- Strange syntax error - when importing mermaid.js [\#515](https://github.com/knsv/mermaid/issues/515)
+- gantt x-axis display [\#510](https://github.com/knsv/mermaid/issues/510)
+- phantomjs renamed to phantomjs-prebuilt [\#508](https://github.com/knsv/mermaid/issues/508)
+- issue when using sphinxcontrib-mermaid extension for sphinx [\#507](https://github.com/knsv/mermaid/issues/507)
+- layout of docs page looks broken [\#504](https://github.com/knsv/mermaid/issues/504)
+- Problem showing graph with php on localhost [\#502](https://github.com/knsv/mermaid/issues/502)
+- logLevel's option doesn't work at 7.0.0 [\#501](https://github.com/knsv/mermaid/issues/501)
+- How do I get the log for a render or parse attempt? [\#500](https://github.com/knsv/mermaid/issues/500)
+- Mermaid neutral style style to built in latest release [\#499](https://github.com/knsv/mermaid/issues/499)
+- Any plans for adding a typescript definition file? [\#495](https://github.com/knsv/mermaid/issues/495)
+- Gantt diagrams too narrow [\#493](https://github.com/knsv/mermaid/issues/493)
+- Flowchart edge labels placement [\#490](https://github.com/knsv/mermaid/issues/490)
+- Very different styles when rendering as png vs. svg [\#489](https://github.com/knsv/mermaid/issues/489)
+- New editor that supports mermaid: Caret [\#488](https://github.com/knsv/mermaid/issues/488)
+- Gant PNG margin [\#486](https://github.com/knsv/mermaid/issues/486)
+- ReferenceError: window is not defined [\#485](https://github.com/knsv/mermaid/issues/485)
+- Menu and layout bugs in docs [\#484](https://github.com/knsv/mermaid/issues/484)
+- Mermaid resets some of the page CSS styles [\#482](https://github.com/knsv/mermaid/issues/482)
+- Arrows rendering incorrectly in online editor [\#480](https://github.com/knsv/mermaid/issues/480)
+- CSS stroke-dasharray ignored by browsers but not other viewers [\#474](https://github.com/knsv/mermaid/issues/474)
+- mermaid - Browser Support issue [\#472](https://github.com/knsv/mermaid/issues/472)
+- Totally love mermaid I might pop! [\#471](https://github.com/knsv/mermaid/issues/471)
+- Sequence Diagram: Missing x on async arrows \(png\) [\#469](https://github.com/knsv/mermaid/issues/469)
+- live editor: the svg file rendered from graph is not supported by browsers [\#468](https://github.com/knsv/mermaid/issues/468)
+- Not found css [\#462](https://github.com/knsv/mermaid/issues/462)
+- Phantomjs Dependency [\#461](https://github.com/knsv/mermaid/issues/461)
+- Mermaid cli not working for subgraphs [\#459](https://github.com/knsv/mermaid/issues/459)
+- Support for notes across multiple participants? [\#458](https://github.com/knsv/mermaid/issues/458)
+- Related to Issue \#329: Phantomjs issues. [\#455](https://github.com/knsv/mermaid/issues/455)
+- Add a click style [\#426](https://github.com/knsv/mermaid/issues/426)
+- Add Parallel block \(par\) to sequence diagrams [\#425](https://github.com/knsv/mermaid/issues/425)
+- updating shapes after the flow chart rendering complete [\#424](https://github.com/knsv/mermaid/issues/424)
+- can't catch parse error Maximum call stack size exceeded on safari [\#421](https://github.com/knsv/mermaid/issues/421)
+- Arrows endings are missing [\#419](https://github.com/knsv/mermaid/issues/419)
+- shouldn't mermaid become more like Markdown ? [\#417](https://github.com/knsv/mermaid/issues/417)
+- Live editor show rendered diagram if syntax invalid [\#415](https://github.com/knsv/mermaid/issues/415)
+- Linkstyle stroke does not work [\#410](https://github.com/knsv/mermaid/issues/410)
+- flowchart id's with dots in them .. break links [\#408](https://github.com/knsv/mermaid/issues/408)
+- Flowchart: Link text beginning with lowercase 'o' causes flowchart to break [\#407](https://github.com/knsv/mermaid/issues/407)
+- Some Chinese character will case Safari no responding. [\#405](https://github.com/knsv/mermaid/issues/405)
+- Cannot center-justify text in nodes? [\#397](https://github.com/knsv/mermaid/issues/397)
+- Edge labels should have white background in live editor [\#396](https://github.com/knsv/mermaid/issues/396)
+- Live editor does not support activate/deactivate [\#394](https://github.com/knsv/mermaid/issues/394)
+- Styling subgraph? [\#391](https://github.com/knsv/mermaid/issues/391)
+- Update live editor to version 6.0.0 [\#387](https://github.com/knsv/mermaid/issues/387)
+- sequence diagram config issue [\#385](https://github.com/knsv/mermaid/issues/385)
+- How to add newline in the text [\#384](https://github.com/knsv/mermaid/issues/384)
+- PhantomJS crashes on a large graph [\#380](https://github.com/knsv/mermaid/issues/380)
+- Finnish support for class diagrams using plantuml syntax [\#377](https://github.com/knsv/mermaid/issues/377)
+- mermaidAPI.render generated different svg code from mermaid.int\(\) [\#374](https://github.com/knsv/mermaid/issues/374)
+- Put your own action on the chart [\#372](https://github.com/knsv/mermaid/issues/372)
+- when declaring participants the elements are generated twice [\#370](https://github.com/knsv/mermaid/issues/370)
+- Example Flowchart is cut in display \(Chrome\). [\#368](https://github.com/knsv/mermaid/issues/368)
+- Add shebang support to diagrams [\#365](https://github.com/knsv/mermaid/issues/365)
+- Silencing CLI output [\#352](https://github.com/knsv/mermaid/issues/352)
+- SequenceDiagram: 3+ Alternative Paths [\#348](https://github.com/knsv/mermaid/issues/348)
+- Smaller height of actor boxes [\#342](https://github.com/knsv/mermaid/issues/342)
+- Question: lib/phantomscript.js - foreignObjects in SVG - related to \#58 [\#340](https://github.com/knsv/mermaid/issues/340)
+- npm test fails on osx being blocked at Can not load "PhantomJS", it is not registered! [\#337](https://github.com/knsv/mermaid/issues/337)
+- Tabs & subgraphs cause rendering error [\#336](https://github.com/knsv/mermaid/issues/336)
+- Display question: right angles [\#335](https://github.com/knsv/mermaid/issues/335)
+- No Arrows rendered v0.5.8 [\#330](https://github.com/knsv/mermaid/issues/330)
+- You had errors in your syntax. Use --help for further information. [\#327](https://github.com/knsv/mermaid/issues/327)
+- Allow alternate arrow syntax that doesn't close html comments [\#322](https://github.com/knsv/mermaid/issues/322)
+- Comment in subgraph [\#319](https://github.com/knsv/mermaid/issues/319)
+- Update graph [\#311](https://github.com/knsv/mermaid/issues/311)
+- css conflicts with boostrap's css [\#308](https://github.com/knsv/mermaid/issues/308)
+- Can not get click event to fire. [\#306](https://github.com/knsv/mermaid/issues/306)
+- Fix phantomjs2 compatibility [\#304](https://github.com/knsv/mermaid/issues/304)
+- Flowcharts do not work in native IE11 [\#303](https://github.com/knsv/mermaid/issues/303)
+- Integration with remark.js - tutorial added [\#302](https://github.com/knsv/mermaid/issues/302)
+- Sequence diagram Loops: changing boxMargin spoils the "loop" notation [\#299](https://github.com/knsv/mermaid/issues/299)
+- src/mermaid.js generates bad code [\#297](https://github.com/knsv/mermaid/issues/297)
+- Fresh fork: jasmine tests fail [\#294](https://github.com/knsv/mermaid/issues/294)
+- CSS clash [\#292](https://github.com/knsv/mermaid/issues/292)
+- Mermaid does not work in Chrome 48 [\#281](https://github.com/knsv/mermaid/issues/281)
+- circle and ellipse cannot change color by classDef [\#271](https://github.com/knsv/mermaid/issues/271)
+- npm run watch doesn't work due missing dependencies [\#266](https://github.com/knsv/mermaid/issues/266)
+- label out of node [\#262](https://github.com/knsv/mermaid/issues/262)
+- IE11 Support issue [\#261](https://github.com/knsv/mermaid/issues/261)
+- mermaid without browser [\#260](https://github.com/knsv/mermaid/issues/260)
+- Insufficient capacity of gantt diagrams [\#226](https://github.com/knsv/mermaid/issues/226)
+- some WARN about installation [\#222](https://github.com/knsv/mermaid/issues/222)
+- Live editor offline access [\#217](https://github.com/knsv/mermaid/issues/217)
+- suggest: code highlight mode config for editors [\#212](https://github.com/knsv/mermaid/issues/212)
+- Uncaught RangeError: Maximum call stack size exceeded [\#189](https://github.com/knsv/mermaid/issues/189)
+- Styling label texts [\#50](https://github.com/knsv/mermaid/issues/50)
+
+**Merged pull requests:**
+
+- Remove console.log in classDB. [\#861](https://github.com/knsv/mermaid/pull/861) ([Arthaey](https://github.com/Arthaey))
+- Bump sshpk from 1.13.1 to 1.16.1 [\#851](https://github.com/knsv/mermaid/pull/851) ([dependabot[bot]](https://github.com/apps/dependabot))
+- Significantly smaller bundles [\#850](https://github.com/knsv/mermaid/pull/850) ([fabiospampinato](https://github.com/fabiospampinato))
+- Support styling of subgraphs [\#845](https://github.com/knsv/mermaid/pull/845) ([Qix-](https://github.com/Qix-))
+- fix dark theme loop labels not visible [\#837](https://github.com/knsv/mermaid/pull/837) ([jnnnnn](https://github.com/jnnnnn))
+- fix draw function can only call once [\#832](https://github.com/knsv/mermaid/pull/832) ([vaniship](https://github.com/vaniship))
+- Fix dotted lines not appearing in flowcharts when HTML labels disabled [\#828](https://github.com/knsv/mermaid/pull/828) ([stanhu](https://github.com/stanhu))
+- Fix issue with XML line breaks inside vertex labels [\#824](https://github.com/knsv/mermaid/pull/824) ([jsyang](https://github.com/jsyang))
+- fixed diagrams [\#810](https://github.com/knsv/mermaid/pull/810) ([0xflotus](https://github.com/0xflotus))
+- Clickable gantt tasks [\#804](https://github.com/knsv/mermaid/pull/804) ([abzicht](https://github.com/abzicht))
+- linkStyle now supports list of indexes with a few tests [\#798](https://github.com/knsv/mermaid/pull/798) ([ivan-danilov](https://github.com/ivan-danilov))
+- fix class diagram mermaid [\#795](https://github.com/knsv/mermaid/pull/795) ([DanShai](https://github.com/DanShai))
+- Added exclude weekdays to definition [\#792](https://github.com/knsv/mermaid/pull/792) ([jopapo](https://github.com/jopapo))
+- SVG link rendering [\#791](https://github.com/knsv/mermaid/pull/791) ([flying-sheep](https://github.com/flying-sheep))
+- Gantt milestones [\#788](https://github.com/knsv/mermaid/pull/788) ([gijswijs](https://github.com/gijswijs))
+- Remove duplicate code [\#768](https://github.com/knsv/mermaid/pull/768) ([znxkznxk1030](https://github.com/znxkznxk1030))
+- Render nodes as real links [\#765](https://github.com/knsv/mermaid/pull/765) ([flying-sheep](https://github.com/flying-sheep))
+- Fix issue with marker-end. [\#757](https://github.com/knsv/mermaid/pull/757) ([gjlubbertsen](https://github.com/gjlubbertsen))
+- Make Class Diagrams usable in Stackedit and Live Editor [\#749](https://github.com/knsv/mermaid/pull/749) ([monsterkrampe](https://github.com/monsterkrampe))
+- Adding trapezoid and inverse trapezoid vertex options. [\#741](https://github.com/knsv/mermaid/pull/741) ([adamwulf](https://github.com/adamwulf))
+- Add option for right angles [\#721](https://github.com/knsv/mermaid/pull/721) ([paulbland](https://github.com/paulbland))
+- Add nested activation classes [\#720](https://github.com/knsv/mermaid/pull/720) ([paulbland](https://github.com/paulbland))
+- wip: class diagram cardinality display [\#705](https://github.com/knsv/mermaid/pull/705) ([Vrixyz](https://github.com/Vrixyz))
+- add comments about CSS in config [\#688](https://github.com/knsv/mermaid/pull/688) ([imma90](https://github.com/imma90))
+- SequenceDiagram: Add support for multiple alt else statements [\#641](https://github.com/knsv/mermaid/pull/641) ([sechel](https://github.com/sechel))
+- fix \#426 - add class .clickable on nodes with click function or link [\#598](https://github.com/knsv/mermaid/pull/598) ([thomasleveil](https://github.com/thomasleveil))
+- Spec fix 1 [\#595](https://github.com/knsv/mermaid/pull/595) ([frankschmitt](https://github.com/frankschmitt))
+
+## [7.0.5](https://github.com/knsv/mermaid/tree/7.0.5) (2017-09-01)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/7.0.3...7.0.5)
+
+**Closed issues:**
+
+- live editor latin error after update [\#560](https://github.com/knsv/mermaid/issues/560)
+- Simple full example in online documentation is broken [\#558](https://github.com/knsv/mermaid/issues/558)
+- Graph No Arrow Head v7.0.3 [\#543](https://github.com/knsv/mermaid/issues/543)
+- Conflict while using mermaid along with core-js [\#512](https://github.com/knsv/mermaid/issues/512)
+- Export to pdf on website [\#496](https://github.com/knsv/mermaid/issues/496)
+- New downstream project: Mermaid Preview for VSCode [\#442](https://github.com/knsv/mermaid/issues/442)
+- Can't Zoom the flowchart ? [\#399](https://github.com/knsv/mermaid/issues/399)
+- line labels are not rendered correctly in live editor [\#366](https://github.com/knsv/mermaid/issues/366)
+- mermaid-loader [\#361](https://github.com/knsv/mermaid/issues/361)
+- Are there any documentation or examples for classDiagram and gitGraph? [\#359](https://github.com/knsv/mermaid/issues/359)
+- \# character broken in 0.5.8 [\#347](https://github.com/knsv/mermaid/issues/347)
+- Documentation issue: CSS example is not visible [\#345](https://github.com/knsv/mermaid/issues/345)
+- Include documentation for command line usage [\#326](https://github.com/knsv/mermaid/issues/326)
+- Fresh fork: can't build dist [\#296](https://github.com/knsv/mermaid/issues/296)
+- Invalid value for \ attribute viewBox="0 0 -Infinity -Infinity" [\#291](https://github.com/knsv/mermaid/issues/291)
+- Webpack require fails [\#277](https://github.com/knsv/mermaid/issues/277)
+- New documentation - need improved logo [\#216](https://github.com/knsv/mermaid/issues/216)
+
+## [7.0.3](https://github.com/knsv/mermaid/tree/7.0.3) (2017-06-04)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/7.0.2...7.0.3)
+
+**Closed issues:**
+
+- the documentation website is down [\#539](https://github.com/knsv/mermaid/issues/539)
+- Good example of interactivity with mermaidAPI [\#514](https://github.com/knsv/mermaid/issues/514)
+
+## [7.0.2](https://github.com/knsv/mermaid/tree/7.0.2) (2017-06-01)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/7.0.0...7.0.2)
+
+**Closed issues:**
+
+- CDN is not working [\#511](https://github.com/knsv/mermaid/issues/511)
+- A sampe sequenceDiagram crashes mermaid-cli [\#492](https://github.com/knsv/mermaid/issues/492)
+- Mermaid doesn't delete nodes when called multiple times [\#491](https://github.com/knsv/mermaid/issues/491)
+- API crashes on 2nd render\(\) call [\#478](https://github.com/knsv/mermaid/issues/478)
+- sequenceDiagram: dotted line for alt and empty bracket should be hidden [\#456](https://github.com/knsv/mermaid/issues/456)
+- SVG output \(almost\) not correct [\#434](https://github.com/knsv/mermaid/issues/434)
+- How to set axisFormatter of gantt in mermaid CLI? [\#428](https://github.com/knsv/mermaid/issues/428)
+- customizing link style with any color sets `fill` property to `black` instead of `none` [\#416](https://github.com/knsv/mermaid/issues/416)
+- New line at the end of SVG file [\#400](https://github.com/knsv/mermaid/issues/400)
+- CLI doesn't work [\#389](https://github.com/knsv/mermaid/issues/389)
+- Can't render subgraphs with htmlLabels: false [\#367](https://github.com/knsv/mermaid/issues/367)
+- Color arrowhead [\#362](https://github.com/knsv/mermaid/issues/362)
+- CLI: Invisible text, lines in SVG output [\#341](https://github.com/knsv/mermaid/issues/341)
+
+**Merged pull requests:**
+
+- Support Multi-line Actor Descriptions [\#764](https://github.com/knsv/mermaid/pull/764) ([watsoncj](https://github.com/watsoncj))
+- Update Travis config [\#538](https://github.com/knsv/mermaid/pull/538) ([tylerlong](https://github.com/tylerlong))
+- Fix spelling of 'you' in sequenceDiagram docs [\#537](https://github.com/knsv/mermaid/pull/537) ([ctruelson](https://github.com/ctruelson))
+- Improve CLI output [\#536](https://github.com/knsv/mermaid/pull/536) ([gibson042](https://github.com/gibson042))
+- Modernize mermaid [\#524](https://github.com/knsv/mermaid/pull/524) ([tylerlong](https://github.com/tylerlong))
+- Modernize mermaid [\#519](https://github.com/knsv/mermaid/pull/519) ([tylerlong](https://github.com/tylerlong))
+- Update CLI instructions [\#509](https://github.com/knsv/mermaid/pull/509) ([filipedeschamps](https://github.com/filipedeschamps))
+- Add style for classDiagram to dark/default theme [\#503](https://github.com/knsv/mermaid/pull/503) ([yudenzel](https://github.com/yudenzel))
+- Fix documentation for git graph. [\#498](https://github.com/knsv/mermaid/pull/498) ([gomlgs](https://github.com/gomlgs))
+- Fix links in documentations [\#497](https://github.com/knsv/mermaid/pull/497) ([saveman71](https://github.com/saveman71))
+- Update README.md with git graph sample [\#481](https://github.com/knsv/mermaid/pull/481) ([raghur](https://github.com/raghur))
+- Fix misspelling of βanotherβ [\#479](https://github.com/knsv/mermaid/pull/479) ([stevenschobert](https://github.com/stevenschobert))
+- Fixed \#456 sequenceDiagram: dotted line for alt and empty bracket sho⦠[\#477](https://github.com/knsv/mermaid/pull/477) ([brookhong](https://github.com/brookhong))
+- Add viewbox attr to class diagram [\#473](https://github.com/knsv/mermaid/pull/473) ([gnkm](https://github.com/gnkm))
+- add par statement to sequenceDiagram [\#470](https://github.com/knsv/mermaid/pull/470) ([u-minor](https://github.com/u-minor))
+
+## [7.0.0](https://github.com/knsv/mermaid/tree/7.0.0) (2017-01-29)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/6.0.0...7.0.0)
+
+**Implemented enhancements:**
+
+- npm install -g mermaid does not install phantomjs [\#329](https://github.com/knsv/mermaid/issues/329)
+- activation boxes [\#313](https://github.com/knsv/mermaid/issues/313)
+
+**Closed issues:**
+
+- demos on io site not working [\#466](https://github.com/knsv/mermaid/issues/466)
+- Can not be generated PNG pictures through CLI with Chinese [\#451](https://github.com/knsv/mermaid/issues/451)
+- Round nodes cannot be styled with CSS classes [\#443](https://github.com/knsv/mermaid/issues/443)
+- webpack gulp UglifyJsPlugin error. [\#440](https://github.com/knsv/mermaid/issues/440)
+- String concatenation isn't working [\#432](https://github.com/knsv/mermaid/issues/432)
+- text flow/wrap in actor box of sequence diagram [\#422](https://github.com/knsv/mermaid/issues/422)
+- Online live editor still use old version [\#402](https://github.com/knsv/mermaid/issues/402)
+- uncaught TypeError: t.getTransformToElement is not a function [\#401](https://github.com/knsv/mermaid/issues/401)
+- Only works when using browserify'd code [\#373](https://github.com/knsv/mermaid/issues/373)
+- document the use of shebang line in mmd files [\#364](https://github.com/knsv/mermaid/issues/364)
+- Diagrams are small and unreadable in IE 11 - since 0.5.1 [\#356](https://github.com/knsv/mermaid/issues/356)
+- \[Feature Request\] ER-Diagram Support [\#354](https://github.com/knsv/mermaid/issues/354)
+- The need for mermaid.css should be mentioned explicitly in the intro docs... [\#273](https://github.com/knsv/mermaid/issues/273)
+
+**Merged pull requests:**
+
+- Update index.html [\#465](https://github.com/knsv/mermaid/pull/465) ([bmsleight](https://github.com/bmsleight))
+- Fix for \#416, customizing link style with any color sets `fill` property to `black` instead of `none` [\#452](https://github.com/knsv/mermaid/pull/452) ([joshuacolvin](https://github.com/joshuacolvin))
+- Allow .node\>circle to receive css styles [\#449](https://github.com/knsv/mermaid/pull/449) ([bfriedz](https://github.com/bfriedz))
+- Fix spelling [\#447](https://github.com/knsv/mermaid/pull/447) ([jawn](https://github.com/jawn))
+- added tests and fix cli css style selector lowercase problem [\#445](https://github.com/knsv/mermaid/pull/445) ([whyzdev](https://github.com/whyzdev))
+- Update d3.js [\#441](https://github.com/knsv/mermaid/pull/441) ([hetz](https://github.com/hetz))
+- added tests to reproduce \#434 in flowchart [\#439](https://github.com/knsv/mermaid/pull/439) ([whyzdev](https://github.com/whyzdev))
+- Code Climate config [\#437](https://github.com/knsv/mermaid/pull/437) ([larkinscott](https://github.com/larkinscott))
+- fix gantt and sequence digram cli cfg [\#435](https://github.com/knsv/mermaid/pull/435) ([whyzdev](https://github.com/whyzdev))
+- fix gantt chart cli configuration broken [\#433](https://github.com/knsv/mermaid/pull/433) ([whyzdev](https://github.com/whyzdev))
+- fix gantt chart cli configuration parsing including functions [\#430](https://github.com/knsv/mermaid/pull/430) ([whyzdev](https://github.com/whyzdev))
+- Uses an empty text node instead of a string for svg group labels [\#429](https://github.com/knsv/mermaid/pull/429) ([daveaglick](https://github.com/daveaglick))
+- use tspan via d3.textwrap to place actor text in sequence diagram [\#427](https://github.com/knsv/mermaid/pull/427) ([whyzdev](https://github.com/whyzdev))
+- \#422 use foreignObject/div to place actor label in sequence diagram [\#423](https://github.com/knsv/mermaid/pull/423) ([whyzdev](https://github.com/whyzdev))
+- Clarify the need for a CSS stylesheet [\#413](https://github.com/knsv/mermaid/pull/413) ([sifb](https://github.com/sifb))
+- Added hads downstream project [\#412](https://github.com/knsv/mermaid/pull/412) ([sinedied](https://github.com/sinedied))
+- update usage and fix \#273 [\#406](https://github.com/knsv/mermaid/pull/406) ([jinntrance](https://github.com/jinntrance))
+- Add https://github.com/raghur/mermaid-filter to downstream projects docs page [\#404](https://github.com/knsv/mermaid/pull/404) ([raghur](https://github.com/raghur))
+- New neutral theme [\#395](https://github.com/knsv/mermaid/pull/395) ([sinedied](https://github.com/sinedied))
+- fix cli issues [\#390](https://github.com/knsv/mermaid/pull/390) ([ben-page](https://github.com/ben-page))
+- Add missing space for 'Labels out of bounds' section [\#386](https://github.com/knsv/mermaid/pull/386) ([The-Alchemist](https://github.com/The-Alchemist))
+- Fix typo: `pats` -\> `paths` [\#382](https://github.com/knsv/mermaid/pull/382) ([swhgoon](https://github.com/swhgoon))
+- Added class diagram example to README.md [\#379](https://github.com/knsv/mermaid/pull/379) ([HustLion](https://github.com/HustLion))
+- override normal flowchart arrowhead to allow css styling [\#376](https://github.com/knsv/mermaid/pull/376) ([dodoinblue](https://github.com/dodoinblue))
+- added sphinx extension [\#371](https://github.com/knsv/mermaid/pull/371) ([mgaitan](https://github.com/mgaitan))
+- Fix typo in the sequence diagram documentation [\#369](https://github.com/knsv/mermaid/pull/369) ([ggpasqualino](https://github.com/ggpasqualino))
+
+## [6.0.0](https://github.com/knsv/mermaid/tree/6.0.0) (2016-05-29)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.8...6.0.0)
+
+**Closed issues:**
+
+- Docs css: code hard to read [\#324](https://github.com/knsv/mermaid/issues/324)
+- About Markpad integration [\#323](https://github.com/knsv/mermaid/issues/323)
+- How to link backwards in flowchart? [\#321](https://github.com/knsv/mermaid/issues/321)
+- Help with editor [\#310](https://github.com/knsv/mermaid/issues/310)
+- +1 [\#293](https://github.com/knsv/mermaid/issues/293)
+- Basic chart does not render on Chome, but does in Firefox [\#290](https://github.com/knsv/mermaid/issues/290)
+- Live editor is broken [\#285](https://github.com/knsv/mermaid/issues/285)
+- "No such file or directory" trying to run mermaid 0.5.7 on OS X [\#284](https://github.com/knsv/mermaid/issues/284)
+- participant name as "Long Long Name" [\#283](https://github.com/knsv/mermaid/issues/283)
+- Windows - cli - could not find phantomjs at the specified path [\#236](https://github.com/knsv/mermaid/issues/236)
+
+**Merged pull requests:**
+
+- The option of gantt for the spaces for the section names. [\#353](https://github.com/knsv/mermaid/pull/353) ([zeroyonichihachi](https://github.com/zeroyonichihachi))
+- Gitgraph: Make reset work with parent ref carets [\#350](https://github.com/knsv/mermaid/pull/350) ([raghur](https://github.com/raghur))
+- Remove the text-shadows that make the text look blurry [\#349](https://github.com/knsv/mermaid/pull/349) ([AsaAyers](https://github.com/AsaAyers))
+- add line interpolation to linkStyle in flowchart [\#346](https://github.com/knsv/mermaid/pull/346) ([AlanHohn](https://github.com/AlanHohn))
+- Support git graph diagrams in mermaid [\#344](https://github.com/knsv/mermaid/pull/344) ([raghur](https://github.com/raghur))
+- Build and test execution changes [\#338](https://github.com/knsv/mermaid/pull/338) ([ssbarnea](https://github.com/ssbarnea))
+- Reformatting of css files [\#331](https://github.com/knsv/mermaid/pull/331) ([Jmuccigr](https://github.com/Jmuccigr))
+- \(WIP\) Sequence Diagram Title Support [\#320](https://github.com/knsv/mermaid/pull/320) ([bronsoja](https://github.com/bronsoja))
+- activations doc + few fixes [\#318](https://github.com/knsv/mermaid/pull/318) ([ciekawy](https://github.com/ciekawy))
+- Dark theme for better contrast on darker backgrounds [\#317](https://github.com/knsv/mermaid/pull/317) ([crodriguez1a](https://github.com/crodriguez1a))
+- Activations [\#316](https://github.com/knsv/mermaid/pull/316) ([ciekawy](https://github.com/ciekawy))
+- Support leading comments for sequenceDiagrams [\#312](https://github.com/knsv/mermaid/pull/312) ([ashsearle](https://github.com/ashsearle))
+- Show a little lenience for white-space around names [\#309](https://github.com/knsv/mermaid/pull/309) ([ashsearle](https://github.com/ashsearle))
+- Update list of downstream projects [\#307](https://github.com/knsv/mermaid/pull/307) ([maxArturo](https://github.com/maxArturo))
+- Issue 299: Sequence diagram Loops: changing boxMargin spoils the "loop" notation [\#300](https://github.com/knsv/mermaid/pull/300) ([LarryKlugerDS](https://github.com/LarryKlugerDS))
+- Issue 297 - src/mermaid.js generates bad code [\#298](https://github.com/knsv/mermaid/pull/298) ([LarryKlugerDS](https://github.com/LarryKlugerDS))
+- Updated instructions for running tests [\#295](https://github.com/knsv/mermaid/pull/295) ([LarryKlugerDS](https://github.com/LarryKlugerDS))
+- Add Markdown Plus to Downstream projects [\#288](https://github.com/knsv/mermaid/pull/288) ([tylerlong](https://github.com/tylerlong))
+- Quote phantomPath so that it doesn't fail on window [\#286](https://github.com/knsv/mermaid/pull/286) ([raghur](https://github.com/raghur))
+
+## [0.5.8](https://github.com/knsv/mermaid/tree/0.5.8) (2016-01-27)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.7...0.5.8)
+
+## [0.5.7](https://github.com/knsv/mermaid/tree/0.5.7) (2016-01-25)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.6...0.5.7)
+
+**Closed issues:**
+
+- Mermaid + LightPaper = β€οΈ [\#280](https://github.com/knsv/mermaid/issues/280)
+- Bower Integration [\#278](https://github.com/knsv/mermaid/issues/278)
+- Mermaid breaks when variables end in 'v' [\#276](https://github.com/knsv/mermaid/issues/276)
+- sequence diagrams don't support participant aliasing [\#263](https://github.com/knsv/mermaid/issues/263)
+- One diagram that fails to render stops further execution on the page [\#259](https://github.com/knsv/mermaid/issues/259)
+- Where to find line layout algorithm? [\#258](https://github.com/knsv/mermaid/issues/258)
+- Compatibility with node.js [\#257](https://github.com/knsv/mermaid/issues/257)
+- Label resizing with dynamically loaded fonts [\#255](https://github.com/knsv/mermaid/issues/255)
+- SVG arrowheads are broken in the CLI [\#249](https://github.com/knsv/mermaid/issues/249)
+- Cannot read property 'replace' of undefined [\#239](https://github.com/knsv/mermaid/issues/239)
+
+**Merged pull requests:**
+
+- gh-50 Allow styling of edge labels in css [\#267](https://github.com/knsv/mermaid/pull/267) ([Anoia](https://github.com/Anoia))
+- Allow sequenceDiagram participant aliasing [\#265](https://github.com/knsv/mermaid/pull/265) ([gibson042](https://github.com/gibson042))
+
+## [0.5.6](https://github.com/knsv/mermaid/tree/0.5.6) (2015-11-22)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.5...0.5.6)
+
+**Implemented enhancements:**
+
+- Add download SVG link to the live editor [\#144](https://github.com/knsv/mermaid/issues/144)
+
+**Fixed bugs:**
+
+- Live Editor: Permalink address not being parsed [\#202](https://github.com/knsv/mermaid/issues/202)
+
+**Closed issues:**
+
+- title doesn't work in sequenceDiagram [\#248](https://github.com/knsv/mermaid/issues/248)
+- hypen-minus should be valid in sequence diagram alt/else/etc. descriptions [\#247](https://github.com/knsv/mermaid/issues/247)
+- Broken in firefox? [\#245](https://github.com/knsv/mermaid/issues/245)
+- When there is a Chinese symbol in the flowchart, it will crashγ [\#238](https://github.com/knsv/mermaid/issues/238)
+- Non-alpha characters included in ALPHA token \(flow graph jison\) [\#232](https://github.com/knsv/mermaid/issues/232)
+- subgraph not rendering with change to sample [\#231](https://github.com/knsv/mermaid/issues/231)
+- sequence diagram requires a new line at the end? [\#229](https://github.com/knsv/mermaid/issues/229)
+
+**Merged pull requests:**
+
+- Make sequenceDiagram terminal newline optional [\#253](https://github.com/knsv/mermaid/pull/253) ([gibson042](https://github.com/gibson042))
+- Support sequenceDiagram "over" notes [\#252](https://github.com/knsv/mermaid/pull/252) ([gibson042](https://github.com/gibson042))
+- Properly handle "rest of line" statements [\#251](https://github.com/knsv/mermaid/pull/251) ([gibson042](https://github.com/gibson042))
+- CLI: Propagate exit code from lib \(i.e., phantomjs\) [\#250](https://github.com/knsv/mermaid/pull/250) ([gibson042](https://github.com/gibson042))
+- flowRender.js - Fix FontAwesome icon insert [\#244](https://github.com/knsv/mermaid/pull/244) ([ma-zal](https://github.com/ma-zal))
+- updated sequence diagram link in live editor [\#242](https://github.com/knsv/mermaid/pull/242) ([r-a-v-a-s](https://github.com/r-a-v-a-s))
+- updated links in README.md [\#240](https://github.com/knsv/mermaid/pull/240) ([r-a-v-a-s](https://github.com/r-a-v-a-s))
+- Ellipse syntax [\#237](https://github.com/knsv/mermaid/pull/237) ([spect88](https://github.com/spect88))
+- Allow keywords as suffixes of node ids [\#235](https://github.com/knsv/mermaid/pull/235) ([spect88](https://github.com/spect88))
+- Highlighted the editor in the nav [\#234](https://github.com/knsv/mermaid/pull/234) ([knsv](https://github.com/knsv))
+- Live editor tweaks [\#233](https://github.com/knsv/mermaid/pull/233) ([spect88](https://github.com/spect88))
+- Add a Gitter chat badge to README.md [\#230](https://github.com/knsv/mermaid/pull/230) ([gitter-badger](https://github.com/gitter-badger))
+
+## [0.5.5](https://github.com/knsv/mermaid/tree/0.5.5) (2015-10-21)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.4...0.5.5)
+
+**Closed issues:**
+
+- sequence diagram, arrowhead instead of crosshead [\#227](https://github.com/knsv/mermaid/issues/227)
+
+**Merged pull requests:**
+
+- Fix a typo: crosshead --\> arrowhead [\#228](https://github.com/knsv/mermaid/pull/228) ([tylerlong](https://github.com/tylerlong))
+
+## [0.5.4](https://github.com/knsv/mermaid/tree/0.5.4) (2015-10-19)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.3...0.5.4)
+
+**Implemented enhancements:**
+
+- Set log level from mermaid configuration [\#220](https://github.com/knsv/mermaid/issues/220)
+- Links in sequence diagrams [\#159](https://github.com/knsv/mermaid/issues/159)
+- Add syntax for double headed arrows [\#123](https://github.com/knsv/mermaid/issues/123)
+
+**Fixed bugs:**
+
+- comment characters `%%` cause parse error [\#141](https://github.com/knsv/mermaid/issues/141)
+
+**Closed issues:**
+
+- Marker-end arrow cannot be shown for URL with query parameter [\#225](https://github.com/knsv/mermaid/issues/225)
+- Please update bower's D3 version [\#221](https://github.com/knsv/mermaid/issues/221)
+- Width fixed to 400px [\#204](https://github.com/knsv/mermaid/issues/204)
+- render to png from the cli does not display the marker-end arrow heads [\#181](https://github.com/knsv/mermaid/issues/181)
+
+**Merged pull requests:**
+
+- Allow `end` as a substring of vertex id [\#224](https://github.com/knsv/mermaid/pull/224) ([spect88](https://github.com/spect88))
+- Remove duplicate npm dependencies: d3 and he [\#223](https://github.com/knsv/mermaid/pull/223) ([spect88](https://github.com/spect88))
+
+## [0.5.3](https://github.com/knsv/mermaid/tree/0.5.3) (2015-10-04)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.2...0.5.3)
+
+## [0.5.2](https://github.com/knsv/mermaid/tree/0.5.2) (2015-10-04)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.1...0.5.2)
+
+**Implemented enhancements:**
+
+- Support for hyperlink and tooltip [\#34](https://github.com/knsv/mermaid/issues/34)
+
+**Closed issues:**
+
+- Installing βatom-mermaid@0.1.3β failed [\#218](https://github.com/knsv/mermaid/issues/218)
+- node feature request [\#211](https://github.com/knsv/mermaid/issues/211)
+- Please add prefix for styles [\#208](https://github.com/knsv/mermaid/issues/208)
+- Bad handling of block arguments [\#207](https://github.com/knsv/mermaid/issues/207)
+- please consider port to mac osx [\#203](https://github.com/knsv/mermaid/issues/203)
+- allow phantomjs \>=1.9.x [\#201](https://github.com/knsv/mermaid/issues/201)
+- syntax for venn diagrams? [\#200](https://github.com/knsv/mermaid/issues/200)
+- Broken CLI Graphs? \(v0.5.1\) [\#196](https://github.com/knsv/mermaid/issues/196)
+- Static site does not render under HTTPS [\#194](https://github.com/knsv/mermaid/issues/194)
+- Error on simple graph [\#192](https://github.com/knsv/mermaid/issues/192)
+- Escape "~" [\#191](https://github.com/knsv/mermaid/issues/191)
+- Trying to add link using 'click' to flowchart [\#188](https://github.com/knsv/mermaid/issues/188)
+- cli: no lines and arrowheads rendered / only dotted lines [\#187](https://github.com/knsv/mermaid/issues/187)
+- text of mermaid div displayed on page [\#186](https://github.com/knsv/mermaid/issues/186)
+- using mermaid with laravel [\#185](https://github.com/knsv/mermaid/issues/185)
+- Atom editor package [\#183](https://github.com/knsv/mermaid/issues/183)
+- Auto linewrap for notes in sequence diagrams [\#178](https://github.com/knsv/mermaid/issues/178)
+- Execute code after initialize [\#176](https://github.com/knsv/mermaid/issues/176)
+- Autoscaling for all diagram types [\#175](https://github.com/knsv/mermaid/issues/175)
+- Problem wit click event callback [\#174](https://github.com/knsv/mermaid/issues/174)
+- How to escape characters? [\#170](https://github.com/knsv/mermaid/issues/170)
+- it can not work [\#167](https://github.com/knsv/mermaid/issues/167)
+- Broken subgraph using the CLI [\#153](https://github.com/knsv/mermaid/issues/153)
+- IE Support issue [\#142](https://github.com/knsv/mermaid/issues/142)
+- Flowchart truncated [\#140](https://github.com/knsv/mermaid/issues/140)
+- Double Quote as text is not working [\#219](https://github.com/knsv/mermaid/issues/219)
+- classDef / class not working with htmlLabels? [\#210](https://github.com/knsv/mermaid/issues/210)
+- Links in graph missing [\#209](https://github.com/knsv/mermaid/issues/209)
+- Last word in comment boxes getting cut off by word wrap library : \( [\#195](https://github.com/knsv/mermaid/issues/195)
+- Escaping characters in sequence diagram [\#193](https://github.com/knsv/mermaid/issues/193)
+- SVG foreignObject rendering [\#180](https://github.com/knsv/mermaid/issues/180)
+- IE9 issue [\#179](https://github.com/knsv/mermaid/issues/179)
+- inoperable in an AMD/requirejs environment: IPython Notebook [\#127](https://github.com/knsv/mermaid/issues/127)
+- \[Parser\] Hyphen in participant name bring TypeError [\#74](https://github.com/knsv/mermaid/issues/74)
+
+**Merged pull requests:**
+
+- Update flowchart.md [\#214](https://github.com/knsv/mermaid/pull/214) ([orschiro](https://github.com/orschiro))
+- Default style when using the CLI [\#205](https://github.com/knsv/mermaid/pull/205) ([gillesdemey](https://github.com/gillesdemey))
+- Gantt chart - add minutes and seconds durations [\#198](https://github.com/knsv/mermaid/pull/198) ([dbrans](https://github.com/dbrans))
+- Using QUnit for AMD testing [\#190](https://github.com/knsv/mermaid/pull/190) ([bollwyvl](https://github.com/bollwyvl))
+- Update phantomscript.js [\#182](https://github.com/knsv/mermaid/pull/182) ([phairow](https://github.com/phairow))
+
+## [0.5.1](https://github.com/knsv/mermaid/tree/0.5.1) (2015-06-21)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.5.0...0.5.1)
+
+**Implemented enhancements:**
+
+- To SVG Export [\#146](https://github.com/knsv/mermaid/issues/146)
+- Possibility to set the width of the generated flowchart [\#129](https://github.com/knsv/mermaid/issues/129)
+- Special characters break parsing [\#54](https://github.com/knsv/mermaid/issues/54)
+- Responsive graph layout for mobile viewers [\#51](https://github.com/knsv/mermaid/issues/51)
+- Styling connector lines [\#31](https://github.com/knsv/mermaid/issues/31)
+
+**Fixed bugs:**
+
+- flowchart - styling of edges via css overrides specific styles set in the graph definition [\#128](https://github.com/knsv/mermaid/issues/128)
+
+**Closed issues:**
+
+- Live editor is broken [\#173](https://github.com/knsv/mermaid/issues/173)
+- 0.5.0 no longer respects custom date definitions in Gantt diagrams [\#171](https://github.com/knsv/mermaid/issues/171)
+- Drop label character restrictions [\#162](https://github.com/knsv/mermaid/issues/162)
+- can't nest subgraphs in flowchart [\#161](https://github.com/knsv/mermaid/issues/161)
+- Unable to generate gantt diagram with mermaid CLI [\#158](https://github.com/knsv/mermaid/issues/158)
+- Inline css by "mermaid" [\#157](https://github.com/knsv/mermaid/issues/157)
+- Finite State Machine Diagram [\#152](https://github.com/knsv/mermaid/issues/152)
+- How to center align gantt diagram [\#150](https://github.com/knsv/mermaid/issues/150)
+- Security concern regarding class definition [\#148](https://github.com/knsv/mermaid/issues/148)
+- File Extension [\#147](https://github.com/knsv/mermaid/issues/147)
+- `setTimeout` with clusters problematic with programmatic edits and no callback [\#133](https://github.com/knsv/mermaid/issues/133)
+- module.exports.cloneCssStyles\(\) in combination with Angularjs breaks display in Chrome and IE [\#126](https://github.com/knsv/mermaid/issues/126)
+- Gantt - suitable xAxis for longer project [\#125](https://github.com/knsv/mermaid/issues/125)
+- How to get started with this project ? [\#64](https://github.com/knsv/mermaid/issues/64)
+
+**Merged pull requests:**
+
+- Remove moot `version` property from bower.json [\#172](https://github.com/knsv/mermaid/pull/172) ([kkirsche](https://github.com/kkirsche))
+
+## [0.5.0](https://github.com/knsv/mermaid/tree/0.5.0) (2015-06-07)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.4.0...0.5.0)
+
+**Implemented enhancements:**
+
+- Add a css file, mermaid.css, with default styling [\#122](https://github.com/knsv/mermaid/issues/122)
+- software architecture diagram [\#36](https://github.com/knsv/mermaid/issues/36)
+- Support for bar charts and pie diagrams [\#22](https://github.com/knsv/mermaid/issues/22)
+
+**Closed issues:**
+
+- uglifyjs wanrings which means we can improve the code [\#156](https://github.com/knsv/mermaid/issues/156)
+- New\(er\) features unavailable in downloadable js files? [\#151](https://github.com/knsv/mermaid/issues/151)
+- Add gh-gapes link to description [\#143](https://github.com/knsv/mermaid/issues/143)
+- Some examples not displayed on Firefox 36.0.1 [\#138](https://github.com/knsv/mermaid/issues/138)
+- tags ending in a "v" don't render [\#132](https://github.com/knsv/mermaid/issues/132)
+- Links in flowchart [\#131](https://github.com/knsv/mermaid/issues/131)
+- Using the library for iOS development [\#130](https://github.com/knsv/mermaid/issues/130)
+- Add capability for gantt diagrams [\#118](https://github.com/knsv/mermaid/issues/118)
+- lower case v causes error in the parser [\#108](https://github.com/knsv/mermaid/issues/108)
+- Label's css conflict with boostrap's .label [\#67](https://github.com/knsv/mermaid/issues/67)
+- TypeError: Cannot read property 'layout' of undefined [\#37](https://github.com/knsv/mermaid/issues/37)
+
+**Merged pull requests:**
+
+- Dev 0.5.0 [\#168](https://github.com/knsv/mermaid/pull/168) ([knsv](https://github.com/knsv))
+- Fix spacing [\#164](https://github.com/knsv/mermaid/pull/164) ([rhcarvalho](https://github.com/rhcarvalho))
+- Fixing typo: "Think" -\> "Thick" [\#160](https://github.com/knsv/mermaid/pull/160) ([it0a](https://github.com/it0a))
+- IE, local html, cssRules access is denied [\#155](https://github.com/knsv/mermaid/pull/155) ([tylerlong](https://github.com/tylerlong))
+- Add automatically generated change log file. [\#139](https://github.com/knsv/mermaid/pull/139) ([skywinder](https://github.com/skywinder))
+- Adding init argument to the global API [\#137](https://github.com/knsv/mermaid/pull/137) ([bollwyvl](https://github.com/bollwyvl))
+- Add description of manual calling of init [\#136](https://github.com/knsv/mermaid/pull/136) ([bollwyvl](https://github.com/bollwyvl))
+- Allow other forms of node selection for init\(\) [\#135](https://github.com/knsv/mermaid/pull/135) ([bollwyvl](https://github.com/bollwyvl))
+- Use a library-level variable for assigning ids [\#134](https://github.com/knsv/mermaid/pull/134) ([bollwyvl](https://github.com/bollwyvl))
+
+## [0.4.0](https://github.com/knsv/mermaid/tree/0.4.0) (2015-03-01)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.3.5...0.4.0)
+
+**Implemented enhancements:**
+
+- Assymetric shapes not documented [\#82](https://github.com/knsv/mermaid/issues/82)
+- Improve arrows [\#3](https://github.com/knsv/mermaid/issues/3)
+
+**Fixed bugs:**
+
+- NoModificationAllowedError [\#23](https://github.com/knsv/mermaid/issues/23)
+
+**Closed issues:**
+
+- subgraph background is black in rendered flowchart PNG via CLI [\#121](https://github.com/knsv/mermaid/issues/121)
+- Integrate editor at https://github.com/naseer/mermaid-webapp [\#110](https://github.com/knsv/mermaid/issues/110)
+- Internet Explorer Support [\#99](https://github.com/knsv/mermaid/issues/99)
+
+## [0.3.5](https://github.com/knsv/mermaid/tree/0.3.5) (2015-02-15)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.3.4...0.3.5)
+
+## [0.3.4](https://github.com/knsv/mermaid/tree/0.3.4) (2015-02-15)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.3.3...0.3.4)
+
+**Implemented enhancements:**
+
+- Apply styling from css when using the CLI utility [\#85](https://github.com/knsv/mermaid/issues/85)
+- Generated SVG works poorly outside web browsers [\#58](https://github.com/knsv/mermaid/issues/58)
+- Generating SVG text blob for use in Node [\#2](https://github.com/knsv/mermaid/issues/2)
+
+**Closed issues:**
+
+- Subgraph syntax bug? [\#120](https://github.com/knsv/mermaid/issues/120)
+- Live editor [\#115](https://github.com/knsv/mermaid/issues/115)
+- Error in "Basic Syntax" wiki page [\#113](https://github.com/knsv/mermaid/issues/113)
+- semicolons, anyone? [\#111](https://github.com/knsv/mermaid/issues/111)
+- undefined `sequenceConfig` fails [\#109](https://github.com/knsv/mermaid/issues/109)
+- Sequence Diagrams: Show Actors below as well [\#106](https://github.com/knsv/mermaid/issues/106)
+- Allow overriding sequence diagram configuration \(SVG properties\) [\#103](https://github.com/knsv/mermaid/issues/103)
+- Error when rendering A-- This is the text -- B [\#102](https://github.com/knsv/mermaid/issues/102)
+- Clipping in documentation [\#97](https://github.com/knsv/mermaid/issues/97)
+- isolate class styling to the svg container [\#92](https://github.com/knsv/mermaid/issues/92)
+- Make the new graph declaration more visual [\#40](https://github.com/knsv/mermaid/issues/40)
+
+**Merged pull requests:**
+
+- Add live editor [\#119](https://github.com/knsv/mermaid/pull/119) ([naseer](https://github.com/naseer))
+- Adds CSS option to the CLI [\#116](https://github.com/knsv/mermaid/pull/116) ([fardog](https://github.com/fardog))
+- Update flowchart.md in response Issue \#113 [\#114](https://github.com/knsv/mermaid/pull/114) ([vijay40](https://github.com/vijay40))
+- Ignore all files except the license and dist/ folder when installing with Bower. [\#112](https://github.com/knsv/mermaid/pull/112) ([jasonbellamy](https://github.com/jasonbellamy))
+
+## [0.3.3](https://github.com/knsv/mermaid/tree/0.3.3) (2015-01-25)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.3.2...0.3.3)
+
+**Implemented enhancements:**
+
+- Support for dotted links [\#26](https://github.com/knsv/mermaid/issues/26)
+
+**Closed issues:**
+
+- Missing arrows in sequence diagram [\#98](https://github.com/knsv/mermaid/issues/98)
+- Error with \>9 linkStyles [\#95](https://github.com/knsv/mermaid/issues/95)
+
+**Merged pull requests:**
+
+- Require d3 directly to better support Node usage [\#107](https://github.com/knsv/mermaid/pull/107) ([markdalgleish](https://github.com/markdalgleish))
+- update doc with -c option [\#105](https://github.com/knsv/mermaid/pull/105) ([jjmr](https://github.com/jjmr))
+- Add new parameter to the console client to override the svg configuration in sequence diagrams [\#104](https://github.com/knsv/mermaid/pull/104) ([jjmr](https://github.com/jjmr))
+- Text based labels, new shape [\#101](https://github.com/knsv/mermaid/pull/101) ([bjowes](https://github.com/bjowes))
+- fix html tags in example usage [\#100](https://github.com/knsv/mermaid/pull/100) ([deiwin](https://github.com/deiwin))
+
+## [0.3.2](https://github.com/knsv/mermaid/tree/0.3.2) (2015-01-11)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.3.1...0.3.2)
+
+**Implemented enhancements:**
+
+- Make link text look like it is on the line [\#53](https://github.com/knsv/mermaid/issues/53)
+
+**Closed issues:**
+
+- disable auto render [\#91](https://github.com/knsv/mermaid/issues/91)
+- Tidy breaks mermaid \(linebreaks in \\) [\#87](https://github.com/knsv/mermaid/issues/87)
+- Bug: \
being rendered as text in node [\#73](https://github.com/knsv/mermaid/issues/73)
+- Graph edges appear to render outside of the canvas [\#70](https://github.com/knsv/mermaid/issues/70)
+
+**Merged pull requests:**
+
+- Merge pull request \#1 from knsv/master [\#96](https://github.com/knsv/mermaid/pull/96) ([gkchic](https://github.com/gkchic))
+- Removed duplicated section in flowchart docs [\#94](https://github.com/knsv/mermaid/pull/94) ([kaime](https://github.com/kaime))
+- Grammar changes to sequence page [\#93](https://github.com/knsv/mermaid/pull/93) ([gkchic](https://github.com/gkchic))
+- Github buttons [\#89](https://github.com/knsv/mermaid/pull/89) ([gkchic](https://github.com/gkchic))
+- Template change [\#88](https://github.com/knsv/mermaid/pull/88) ([gkchic](https://github.com/gkchic))
+
+## [0.3.1](https://github.com/knsv/mermaid/tree/0.3.1) (2015-01-05)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.3.0...0.3.1)
+
+**Implemented enhancements:**
+
+- Support for sequence diagrams [\#16](https://github.com/knsv/mermaid/issues/16)
+- Client utility for mermaid [\#6](https://github.com/knsv/mermaid/issues/6)
+
+**Closed issues:**
+
+- Non ASCII chars in labels [\#84](https://github.com/knsv/mermaid/issues/84)
+- 'undefined' titles of Quicklinks on the usage page [\#80](https://github.com/knsv/mermaid/issues/80)
+- \[cli\] Enhancement proposal: not fail --version / --help if phantomjs isn't installed [\#71](https://github.com/knsv/mermaid/issues/71)
+
+**Merged pull requests:**
+
+- Flowchart doc: Text in the circle now in a circle [\#81](https://github.com/knsv/mermaid/pull/81) ([Grahack](https://github.com/Grahack))
+- Fix for issue \#73 [\#79](https://github.com/knsv/mermaid/pull/79) ([it0a](https://github.com/it0a))
+- Ink template [\#78](https://github.com/knsv/mermaid/pull/78) ([gkchic](https://github.com/gkchic))
+- Show help and version even if phantom isn't present. Fixes \#71 [\#75](https://github.com/knsv/mermaid/pull/75) ([fardog](https://github.com/fardog))
+- Add apostrophe & 'and' [\#72](https://github.com/knsv/mermaid/pull/72) ([sudodoki](https://github.com/sudodoki))
+
+## [0.3.0](https://github.com/knsv/mermaid/tree/0.3.0) (2014-12-22)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.16...0.3.0)
+
+**Implemented enhancements:**
+
+- How do I do comments? [\#47](https://github.com/knsv/mermaid/issues/47)
+- Improve readability with new line as terminator and whitespace [\#38](https://github.com/knsv/mermaid/issues/38)
+
+**Fixed bugs:**
+
+- This characters failed the lexical parsing [\#46](https://github.com/knsv/mermaid/issues/46)
+
+**Closed issues:**
+
+- Trailing whitespace at the end of lines is not ignored [\#55](https://github.com/knsv/mermaid/issues/55)
+- Use classes instead of inline style for easy styling [\#24](https://github.com/knsv/mermaid/issues/24)
+
+**Merged pull requests:**
+
+- Adds Command Line Interface for generating PNGs from mermaid description files [\#69](https://github.com/knsv/mermaid/pull/69) ([fardog](https://github.com/fardog))
+- Allow special symbols for direction along with acronyms [\#66](https://github.com/knsv/mermaid/pull/66) ([vijay40](https://github.com/vijay40))
+
+## [0.2.16](https://github.com/knsv/mermaid/tree/0.2.16) (2014-12-15)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.15...0.2.16)
+
+**Fixed bugs:**
+
+- Lines routed outside visible area [\#19](https://github.com/knsv/mermaid/issues/19)
+
+**Closed issues:**
+
+- Mermaid not rendering properly on Wordpress pages [\#59](https://github.com/knsv/mermaid/issues/59)
+- Improve example page with live demo [\#52](https://github.com/knsv/mermaid/issues/52)
+- Does not render upon AngularJS Updates [\#45](https://github.com/knsv/mermaid/issues/45)
+- Download link in README.MD doesn't work. [\#42](https://github.com/knsv/mermaid/issues/42)
+- linkStyle usage is not obvious [\#41](https://github.com/knsv/mermaid/issues/41)
+- Move \*.spec.js in src/ to test/ [\#35](https://github.com/knsv/mermaid/issues/35)
+
+**Merged pull requests:**
+
+- New grammar will allow statements ending without semicolon as disccused in Issue \#38 [\#63](https://github.com/knsv/mermaid/pull/63) ([vijay40](https://github.com/vijay40))
+- Class based styling [\#62](https://github.com/knsv/mermaid/pull/62) ([bjowes](https://github.com/bjowes))
+- Fix typos [\#60](https://github.com/knsv/mermaid/pull/60) ([sublimino](https://github.com/sublimino))
+- Included .DS_Store in gitignore [\#57](https://github.com/knsv/mermaid/pull/57) ([alvynmcq](https://github.com/alvynmcq))
+- Improves readability discussed in issue \#38 [\#56](https://github.com/knsv/mermaid/pull/56) ([vijay40](https://github.com/vijay40))
+- Added a linting task for gulp [\#43](https://github.com/knsv/mermaid/pull/43) ([serv](https://github.com/serv))
+
+## [0.2.15](https://github.com/knsv/mermaid/tree/0.2.15) (2014-12-05)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.14...0.2.15)
+
+**Fixed bugs:**
+
+- Error with some characters [\#25](https://github.com/knsv/mermaid/issues/25)
+- Cap-cased words break parser [\#8](https://github.com/knsv/mermaid/issues/8)
+
+**Closed issues:**
+
+- Question marks don't render properly with /dist/mermaid.full.min.js [\#30](https://github.com/knsv/mermaid/issues/30)
+- Provide parse function in browser widthout `require`? [\#21](https://github.com/knsv/mermaid/issues/21)
+- Better label text support [\#18](https://github.com/knsv/mermaid/issues/18)
+
+**Merged pull requests:**
+
+- Include bower_components/ to .gitignore [\#33](https://github.com/knsv/mermaid/pull/33) ([serv](https://github.com/serv))
+- Fixed reference to Git repo. [\#32](https://github.com/knsv/mermaid/pull/32) ([guyellis](https://github.com/guyellis))
+
+## [0.2.14](https://github.com/knsv/mermaid/tree/0.2.14) (2014-12-03)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.13...0.2.14)
+
+## [0.2.13](https://github.com/knsv/mermaid/tree/0.2.13) (2014-12-03)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.10...0.2.13)
+
+**Implemented enhancements:**
+
+- Publish to NPM [\#7](https://github.com/knsv/mermaid/issues/7)
+
+**Closed issues:**
+
+- modified init to be applied more than once [\#29](https://github.com/knsv/mermaid/issues/29)
+- Wanted to know build process for the project. [\#28](https://github.com/knsv/mermaid/issues/28)
+- can not support Chinese description [\#20](https://github.com/knsv/mermaid/issues/20)
+- Support unicode chars in labels [\#9](https://github.com/knsv/mermaid/issues/9)
+
+## [0.2.10](https://github.com/knsv/mermaid/tree/0.2.10) (2014-12-01)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.9...0.2.10)
+
+## [0.2.9](https://github.com/knsv/mermaid/tree/0.2.9) (2014-12-01)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.8...0.2.9)
+
+**Closed issues:**
+
+- Add link to jsbin playground to README [\#11](https://github.com/knsv/mermaid/issues/11)
+- What are the requirements ? [\#10](https://github.com/knsv/mermaid/issues/10)
+
+**Merged pull requests:**
+
+- Allow unicode chars in labels [\#13](https://github.com/knsv/mermaid/pull/13) ([codebeige](https://github.com/codebeige))
+
+## [0.2.8](https://github.com/knsv/mermaid/tree/0.2.8) (2014-12-01)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.7...0.2.8)
+
+## [0.2.7](https://github.com/knsv/mermaid/tree/0.2.7) (2014-12-01)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.6...0.2.7)
+
+**Closed issues:**
+
+- Provide parser as separate module [\#4](https://github.com/knsv/mermaid/issues/4)
+
+## [0.2.6](https://github.com/knsv/mermaid/tree/0.2.6) (2014-11-27)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.5...0.2.6)
+
+## [0.2.5](https://github.com/knsv/mermaid/tree/0.2.5) (2014-11-27)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.4...0.2.5)
+
+**Merged pull requests:**
+
+- Added new shapes! [\#1](https://github.com/knsv/mermaid/pull/1) ([bjowes](https://github.com/bjowes))
+
+## [0.2.4](https://github.com/knsv/mermaid/tree/0.2.4) (2014-11-25)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.3...0.2.4)
+
+## [0.2.3](https://github.com/knsv/mermaid/tree/0.2.3) (2014-11-24)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.2...0.2.3)
+
+## [0.2.2](https://github.com/knsv/mermaid/tree/0.2.2) (2014-11-22)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.1...0.2.2)
+
+## [0.2.1](https://github.com/knsv/mermaid/tree/0.2.1) (2014-11-22)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.2.0...0.2.1)
+
+## [0.2.0](https://github.com/knsv/mermaid/tree/0.2.0) (2014-11-22)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.1.1...0.2.0)
+
+## [0.1.1](https://github.com/knsv/mermaid/tree/0.1.1) (2014-11-17)
+
+[Full Changelog](https://github.com/knsv/mermaid/compare/0.1.0...0.1.1)
+
+## [0.1.0](https://github.com/knsv/mermaid/tree/0.1.0) (2014-11-16)
diff --git a/vdocs/community/development.md b/vdocs/community/development.md
new file mode 100644
index 0000000000..95e5fe4174
--- /dev/null
+++ b/vdocs/community/development.md
@@ -0,0 +1,136 @@
+# Development and Contribution π
+
+So you want to help? That's great!
+
+![Image of happy people jumping with excitement](https://media.giphy.com/media/BlVnrxJgTGsUw/giphy.gif)
+
+Here are a few things to get you started on the right path.
+
+**The Docs Structure is dictated by [sidebar.md](https://github.com/mermaid-js/mermaid/edit/develop/src/docs/_sidebar.md)**
+
+**Note: Commits and Pull Requests should be directed to the develop branch.**
+
+## Branching
+
+Mermaid uses a [Git Flow](https://guides.github.com/introduction/flow/)βinspired approach to branching. So development is done in the `develop` branch.
+
+Once development is done we branch a `release` branch from `develop` for testing.
+
+Once the release happens we merge the `release` branch with `master` and kill the `release` branch.
+
+This means that **you should branch off your pull request from develop** and direct all Pull Requests to it.
+
+## Contributing Code
+
+We make all changes via Pull Requests. As we have many Pull Requests from developers new to mermaid, we have put in place a process, wherein _knsv, Knut Sveidqvist_ is the primary reviewer of changes and merging pull requests. The process is as follows:
+
+- Large changes reviewed by knsv or other developer asked to review by knsv
+- Smaller, low-risk changes like dependencies, documentation, etc. can be merged by active collaborators
+- Documentation (we encourage updates to the `src/docs` folder; you can submit them via direct commits)
+
+When you commit code, create a branch with the following naming convention:
+
+Start with the type, such as **feature** or **bug**, followed by the issue number for reference, and a text that describes the issue.
+
+**One example:**
+
+`feature/945_state_diagrams`
+
+**Another example:**
+
+`bug/123_nasty_bug_branch`
+
+## Contributing to Documentation
+
+If it is not in the documentation, it's like it never happened. Wouldn't that be sad? With all the effort that was put into the feature?
+
+The docs are located in the `src/docs` folder and are written in Markdown. Just pick the right section and start typing. If you want to propose changes to the structure of the documentation, such as adding a new section or a new file you do that via the **[sidebar](https://github.com/mermaid-js/mermaid/edit/develop/src/docs/_sidebar.md)**.
+
+> **All the documents displayed in the GitHub.io page are listed in [sidebar.md](https://github.com/mermaid-js/mermaid/edit/develop/src/docs/_sidebar.md)**.
+
+The contents of [https://mermaid-js.github.io/mermaid/](https://mermaid-js.github.io/mermaid/) are based on the docs from the `master` branch. Updates committed to the `master` branch are reflected in the [Mermaid Docs](https://mermaid-js.github.io/mermaid/) once released.
+
+## How to Contribute to Documentation
+
+We are a little less strict here, it is OK to commit directly in the `develop` branch if you are a collaborator.
+
+The documentation is located in the `src/docs` directory and organized according to relevant subfolder.
+
+The `docs` folder will be automatically generated when committing to `src/docs` and should not be edited manually.
+
+We encourage contributions to the documentation at [mermaid-js/mermaid/src/docs](https://github.com/mermaid-js/mermaid/tree/develop/src/docs). We publish documentation using GitHub Pages with [Docsify](https://www.youtube.com/watch?v=TV88lp7egMw&t=3s)
+
+### Add Unit Tests for Parsing
+
+This is important so that, if someone that does not know about this great feature suggests a change to the grammar, they get notified early on when that change breaks the parser. Another important aspect is that, without proper parsing, tests refactoring is pretty much impossible.
+
+### Add E2E Tests
+
+This tests the rendering and visual appearance of the diagrams. This ensures that the rendering of that feature in the e2e will be reviewed in the release process going forward. Less chance that it breaks!
+
+To start working with the e2e tests:
+
+1. Run `yarn dev` to start the dev server
+2. Start **Cypress** by running `cypress open` in the **mermaid** folder.
+ (Make sure you have path to Cypress in order, the binary is located in `node_modules/.bin`).
+
+The rendering tests are very straightforward to create. There is a function `imgSnapshotTest`, which takes a diagram in text form and the mermaid options, and it renders that diagram in Cypress.
+
+When running in CI it will take a snapshot of the rendered diagram and compare it with the snapshot from last build and flag it for review if it differs.
+
+This is what a rendering test looks like:
+
+```js
+it('should render forks and joins', () => {
+ imgSnapshotTest(
+ `
+ stateDiagram
+ state fork_state <<fork>>
+ [*] --> fork_state
+ fork_state --> State2
+ fork_state --> State3
+
+ state join_state <<join>>
+ State2 --> join_state
+ State3 --> join_state
+ join_state --> State4
+ State4 --> [*]
+ `,
+ { logLevel: 0 }
+ );
+ cy.get('svg');
+});
+```
+
+### Any Questions or Suggestions?
+
+After logging in at [GitHub.com](https://www.github.com), open or append to an issue [using the GitHub issue tracker of the mermaid-js repository](https://github.com/mermaid-js/mermaid/issues?q=is%3Aissue+is%3Aopen+label%3A%22Area%3A+Documentation%22).
+
+### How to Contribute a Suggestion
+
+Markdown is used to format the text, for more information about Markdown [see the GitHub Markdown help page](https://help.github.com/en/github/writing-on-github/basic-writing-and-formatting-syntax).
+
+To edit Docs on your computer:
+
+1. Find the Markdown file (.md) to edit in the [mermaid-js/mermaid/src/docs](https://github.com/mermaid-js/mermaid/tree/develop/src/docs) directory in the `develop` branch.
+2. Create a fork of the develop branch.
+3. Make changes or add new documentation.
+4. Commit changes to your fork and push it to GitHub.
+5. Create a Pull Request of your fork.
+
+To edit Docs on GitHub:
+
+1. Login to [GitHub.com](https://www.github.com).
+2. Navigate to [mermaid-js/mermaid/src/docs](https://github.com/mermaid-js/mermaid/tree/develop/src/docs).
+3. To edit a file, click the pencil icon at the top-right of the file contents panel.
+4. Describe what you changed in the **Propose file change** section, located at the bottom of the page.
+5. Submit your changes by clicking the button **Propose file change** at the bottom (by automatic creation of a fork and a new branch).
+6. Create a Pull Request of your newly forked branch by clicking the green **Create Pull Request** button.
+
+## Last Words
+
+Don't get daunted if it is hard in the beginning. We have a great community with only encouraging words. So, if you get stuck, ask for help and hints in the Slack forum. If you want to show off something good, show it off there.
+
+[Join our Slack community if you want closer contact!](https://join.slack.com/t/mermaid-talk/shared_invite/enQtNzc4NDIyNzk4OTAyLWVhYjQxOTI2OTg4YmE1ZmJkY2Y4MTU3ODliYmIwOTY3NDJlYjA0YjIyZTdkMDMyZTUwOGI0NjEzYmEwODcwOTE)
+
+![Image of superhero wishing you good luck](https://media.giphy.com/media/l49JHz7kJvl6MCj3G/giphy.gif)
diff --git a/vdocs/community/img/er.png b/vdocs/community/img/er.png
new file mode 100644
index 0000000000..21c44c257a
Binary files /dev/null and b/vdocs/community/img/er.png differ
diff --git a/vdocs/community/n00b-overview.md b/vdocs/community/n00b-overview.md
new file mode 100644
index 0000000000..3d493b80ae
--- /dev/null
+++ b/vdocs/community/n00b-overview.md
@@ -0,0 +1,68 @@
+# Overview for Beginners
+
+**Explaining with a Diagram**
+
+A picture is worth a thousand words, a good diagram is undoubtedly worth more. They make understanding easier.
+
+## Creating and Maintaining Diagrams
+
+Anyone who has used Visio, or (God Forbid) Excel to make a Gantt Chart, knows how hard it is to create, edit and maintain good visualizations.
+
+Diagrams/Charts are significant but also become obsolete/inaccurate very fast. This catch-22 hobbles the productivity of teams.
+
+# Doc Rot in Diagrams
+
+Doc-Rot kills diagrams as quickly as it does text, but it takes hours in a desktop application to produce a diagram.
+
+Mermaid seeks to change using markdown-inspired syntax. The process is a quicker, less complicated, and more convenient way of going from concept to visualization.
+
+It is a relatively straightforward solution to a significant hurdle with the software teams.
+
+# Definition of Terms/ Dictionary
+
+**Mermaid text definitions can be saved for later reuse and editing.**
+
+> These are the Mermaid diagram definitions inside `
` tags, with the `class=mermaid`.
+
+```html
+
+ graph TD
+ A[Client] --> B[Load Balancer]
+ B --> C[Server01]
+ B --> D[Server02]
+
+```
+
+**render**
+
+> This is the core function of the Mermaid API. It reads all the `Mermaid Definitions` inside `div` tags and returns an SVG file, based on the definition.
+
+**Nodes**
+
+> These are the boxes that contain text or otherwise discrete pieces of each diagram, separated generally by arrows, except for Gantt Charts and User Journey Diagrams. They will be referred often in the instructions. Read for Diagram Specific [Syntax](../config/n00b-syntaxReference)
+
+## Advantages of using Mermaid
+
+- Ease to generate, modify and render diagrams when you make them.
+- The number of integrations and plugins it has.
+- You can add it to your or companies website.
+- Diagrams can be created through comments like this in a script:
+
+## The catch-22 of Diagrams and Charts:
+
+**Diagramming and charting is a large waste of developer's time, but not having diagrams ruins productivity.**
+
+Mermaid solves this by reducing the time and effort required to create diagrams and charts.
+
+Because, the text base for the diagrams allows it to be updated easily. Also, it can be made part of production scripts (and other pieces of code). So less time is spent on documenting, as a separate task.
+
+## Catching up with Development
+
+Being based on markdown, Mermaid can be used, not only by accomplished front-end developers, but by most computer savvy people to render diagrams, at much faster speeds.
+In fact one can pick up the syntax for it quite easily from the examples given and there are many tutorials available in the internet.
+
+## Mermaid is for everyone.
+
+Video [Tutorials](../config/Tutorials) are also available for the mermaid [live editor](https://mermaid.live/).
+
+Alternatively you can use Mermaid [Plug-Ins](../misc/integrations), with tools you already use, like Google Docs.
diff --git a/vdocs/community/newDiagram.md b/vdocs/community/newDiagram.md
new file mode 100644
index 0000000000..1f9aabcb06
--- /dev/null
+++ b/vdocs/community/newDiagram.md
@@ -0,0 +1,263 @@
+# Adding a New Diagram/Chart π
+
+### Step 1: Grammar & Parsing
+
+#### Grammar
+
+This would be to define a jison grammar for the new diagram type. That should start with a way to identify that the text in the mermaid tag is a diagram of that type. Create a new folder under diagrams for your new diagram type and a parser folder in it. This leads us to step 2.
+
+For instance:
+
+- the flowchart starts with the keyword graph.
+- the sequence diagram starts with the keyword sequenceDiagram
+
+#### Store data found during parsing
+
+There are some jison specific sub steps here where the parser stores the data encountered when parsing the diagram, this data is later used by the renderer. You can during the parsing call a object provided to the parser by the user of the parser. This object can be called during parsing for storing data.
+
+```
+statement
+ : 'participant' actor { $$='actor'; }
+ | signal { $$='signal'; }
+ | note_statement { $$='note'; }
+ | 'title' message { yy.setTitle($2); }
+ ;
+```
+
+In the extract of the grammar above, it is defined that a call to the setTitle method in the data object will be done when parsing and the title keyword is encountered.
+
+::: tip
+Make sure that the `parseError` function for the parser is defined and calling `mermaid.parseError`. This way a common way of detecting parse errors is provided for the end-user.
+:::
+
+For more info look in the example diagram type:
+
+The `yy` object has the following function:
+
+```javascript
+exports.parseError = function (err, hash) {
+ mermaid.parseError(err, hash);
+};
+```
+
+when parsing the `yy` object is initialized as per below:
+
+```javascript
+var parser;
+parser = exampleParser.parser;
+parser.yy = db;
+```
+
+### Step 2: Rendering
+
+Write a renderer that given the data found during parsing renders the diagram. To look at an example look at sequenceRenderer.js rather then the flowchart renderer as this is a more generic example.
+
+Place the renderer in the diagram folder.
+
+### Step 3: Detection of the new diagram type
+
+The second thing to do is to add the capability to detect the new new diagram to type to the detectType in utils.js. The detection should return a key for the new diagram type.
+
+### Step 4: The final piece - triggering the rendering
+
+At this point when mermaid is trying to render the diagram, it will detect it as being of the new type but there will be no match when trying to render the diagram. To fix this add a new case in the switch statement in main.js:init this should match the diagram type returned from step #2. The code in this new case statement should call the renderer for the diagram type with the data found by the parser as an argument.
+
+## Usage of the parser as a separate module
+
+### Setup
+
+```javascript
+var graph = require('./graphDb');
+var flow = require('./parser/flow');
+flow.parser.yy = graph;
+```
+
+### Parsing
+
+```javascript
+flow.parser.parse(text);
+```
+
+### Data extraction
+
+```javascript
+graph.getDirection();
+graph.getVertices();
+graph.getEdges();
+```
+
+The parser is also exposed in the mermaid api by calling:
+
+```javascript
+var parser = mermaid.getParser();
+```
+
+Note that the parse needs a graph object to store the data as per:
+
+```javascript
+flow.parser.yy = graph;
+```
+
+Look at `graphDb.js` for more details on that object.
+
+## Layout
+
+If you are using a dagre based layout, please use flowchart-v2 as a template and by doing that you will be using dagre-wrapper instead of dagreD3 which we are migrating away from.
+
+### Common parts of a diagram
+
+There are a few features that are common between the different types of diagrams. We try to standardize the diagrams that work as similar as possible for the end user. The commonalities are:
+
+- Directives, a way of modifying the diagram configuration from within the diagram code.
+- Accessibility, a way for an author to provide additional information like titles and descriptions to people accessing a text with diagrams using a screen reader.
+- Themes, there is a common way to modify the styling of diagrams in Mermaid.
+- Comments should follow mermaid standards
+
+Here some pointers on how to handle these different areas.
+
+#### [Directives](../intro/directives.md)
+
+Here is example handling from flowcharts:
+Jison:
+
+```
+
+/* lexical grammar */
+%lex
+%x open_directive
+%x type_directive
+%x arg_directive
+%x close_directive
+
+\%\%\{ { this.begin('open_directive'); return 'open_directive'; }
+
((?:(?!\}\%\%)[^:.])*) { this.begin('type_directive'); return 'type_directive'; }
+":" { this.popState(); this.begin('arg_directive'); return ':'; }
+\}\%\% { this.popState(); this.popState(); return 'close_directive'; }
+((?:(?!\}\%\%).|\n)*) return 'arg_directive';
+
+/* language grammar */
+
+/* ... */
+
+directive
+ : openDirective typeDirective closeDirective separator
+ | openDirective typeDirective ':' argDirective closeDirective separator
+ ;
+
+openDirective
+ : open_directive { yy.parseDirective('%%{', 'open_directive'); }
+ ;
+
+typeDirective
+ : type_directive { yy.parseDirective($1, 'type_directive'); }
+ ;
+
+argDirective
+ : arg_directive { $1 = $1.trim().replace(/'/g, '"'); yy.parseDirective($1, 'arg_directive'); }
+ ;
+
+closeDirective
+ : close_directive { yy.parseDirective('}%%', 'close_directive', 'flowchart'); }
+ ;
+```
+
+It is probably a good idea to keep the handling similar to this in your new diagram. The parseDirective function is provided by the mermaidAPI.
+
+## Accessibility
+
+The syntax for adding title and description looks like this:
+
+```
+accTitle: The title
+accDescr: The description
+
+accDescr {
+ Syntax for a description text
+ written on multiple lines.
+}
+```
+
+In a similar way to the directives the jison syntax are quite similar between the diagrams.
+
+```
+* lexical grammar */
+%lex
+%x acc_title
+%x acc_descr
+%x acc_descr_multiline
+
+%%
+accTitle\s*":"\s* { this.begin("acc_title");return 'acc_title'; }
+(?!\n|;|#)*[^\n]* { this.popState(); return "acc_title_value"; }
+accDescr\s*":"\s* { this.begin("acc_descr");return 'acc_descr'; }
+(?!\n|;|#)*[^\n]* { this.popState(); return "acc_descr_value"; }
+accDescr\s*"{"\s* { this.begin("acc_descr_multiline");}
+[\}] { this.popState(); }
+[^\}]* return "acc_descr_multiline_value";
+
+statement
+ : acc_title acc_title_value { $$=$2.trim();yy.setTitle($$); }
+ | acc_descr acc_descr_value { $$=$2.trim();yy.setAccDescription($$); }
+ | acc_descr_multiline_value { $$=$1.trim();yy.setAccDescription($$); }
+```
+
+The functions for setting title and description are provided by a common module. This is the import from flowDb.js:
+
+```
+import {
+ setAccTitle,
+ getAccTitle,
+ getAccDescription,
+ setAccDescription,
+ clear as commonClear,
+} from '../../commonDb';
+```
+
+For rendering the accessibility tags you have again an existing function you can use.
+
+**In the renderer:**
+
+```js
+import addSVGAccessibilityFields from '../../accessibility';
+
+/* ... */
+
+// Adds title and description to the flow chart
+addSVGAccessibilityFields(parser.yy, svg, id);
+```
+
+## Theming
+
+Mermaid supports themes and has an integrated theming engine. You can read more about how the themes can be used [in the docs](../config/theming.md).
+
+When adding themes to a diagram it comes down to a few important locations in the code.
+
+The entry point for the styling engine is in **src/styles.js**. The getStyles function will be called by Mermaid when the styles are being applied to the diagram.
+
+This function will in turn call a function _your diagram should provide_ returning the css for the new diagram. The diagram specific, also which is commonly also called getStyles and located in the folder for your diagram under src/diagrams and should be named styles.js. The getStyles function will be called with the theme options as an argument like in the following example:
+
+```js
+const getStyles = (options) =>
+ `
+ .line {
+ stroke-width: 1;
+ stroke: ${options.lineColor};
+ stroke-dasharray: 2;
+ }
+ // ...
+ `;
+```
+
+Note that you need to provide your function to the main getStyles by adding it into the themes object in **src/styles.js** like in the xyzDiagram in the provided example:
+
+```js
+const themes = {
+ flowchart,
+ 'flowchart-v2': flowchart,
+ sequence,
+ xyzDiagram,
+ //...
+};
+```
+
+The actual options and values for the colors are defined in **src/theme/theme-[xyz].js**. If you provide the options your diagram needs in the existing theme files then the theming will work smoothly without hiccups.
diff --git a/vdocs/community/security.md b/vdocs/community/security.md
new file mode 100644
index 0000000000..7e61a60cf3
--- /dev/null
+++ b/vdocs/community/security.md
@@ -0,0 +1,23 @@
+# Security
+
+The Mermaid team takes the security of Mermaid and the applications that use Mermaid seriously. This page describes how to report any vulnerabilities you may find, and lists best practices to minimize the risk of introducing a vulnerability.
+
+## Reporting vulnerabilities
+
+To report a vulnerability, please e-mail security@mermaid.live with a description of the issue, the steps you took to create the issue, affected versions, and if known, mitigations for the issue.
+
+We aim to reply within three working days, probably much sooner.
+
+You should expect a close collaboration as we work to resolve the issue you have reported. Please reach out to security@mermaid.live again if you do not receive prompt attention and regular updates.
+
+You may also reach out to the team via our public Slack chat channels; however, please make sure to e-mail security@mernaid.live when reporting an issue, and avoid revealing information about vulnerabilities in public as that could that could put users at risk.
+
+## Best practices
+
+Keep current with the latest Mermaid releases. We regularly update Mermaid, and these updates may fix security defects discovered in previous versions. Check the Mermaid release notes for security-related updates.
+
+Keep your applicationβs dependencies up to date. Make sure you upgrade your package dependencies to keep the dependencies up to date. Avoid pinning to specific versions for your dependencies and, if you do, make sure you check periodically to see if your dependencies have had security updates, and update the pin accordingly.
+
+## Configuring DomPurify
+
+By default Mermaid uses a baseline [DOMPurify](https://github.com/cure53/DOMPurify) config. It is possible to override the options passed to DOMPurify by adding a `dompurifyConfig` key to the Mermaid options. This could potentially break the output of Mermaid so use this with caution.
diff --git a/vdocs/config/8.6.0_docs.md b/vdocs/config/8.6.0_docs.md
new file mode 100644
index 0000000000..9e5264c12d
--- /dev/null
+++ b/vdocs/config/8.6.0_docs.md
@@ -0,0 +1,213 @@
+# Version 8.6.0 Changes
+
+## [New Mermaid Live-Editor Beta](https://mermaid-js.github.io/docs/mermaid-live-editor-beta/#/edit/eyJjb2RlIjoiJSV7aW5pdDoge1widGhlbWVcIjogXCJmb3Jlc3RcIiwgXCJsb2dMZXZlbFwiOiAxIH19JSVcbmdyYXBoIFREXG4gIEFbQ2hyaXN0bWFzXSAtLT58R2V0IG1vbmV5fCBCKEdvIHNob3BwaW5nKVxuICBCIC0tPiBDe0xldCBtZSB0aGlua31cbiAgQyAtLT58T25lfCBEW0xhcHRvcF1cbiAgQyAtLT58VHdvfCBFW2lQaG9uZV1cbiAgQyAtLT58VGhyZWV8IEZbZmE6ZmEtY2FyIENhcl1cblx0XHQiLCJtZXJtYWlkIjp7InRoZW1lIjoiZGFyayJ9fQ)
+
+## [CDN](https://unpkg.com/mermaid/)
+
+With version 8.6.0 comes the release of directives for mermaid, a new system for modifying configurations, with the aim of establishing centralized, sane defaults and simple implementation.
+
+`directives` allow for a single-use overwriting of `config`, as it has been discussed in [Configurations](./Setup.md).
+This allows site Diagram Authors to instantiate temporary modifications to `config` through the use of [Directives](../config/directives), which are parsed before rendering diagram definitions. This allows the Diagram Authors to alter the appearance of the diagrams.
+
+**A likely application for this is in the creation of diagrams/charts inside company/organizational webpages, that rely on mermaid for diagram and chart rendering.**
+
+the `init` directive is the main method of configuration for Site and Current Levels.
+
+The three levels of are Configuration, Global, Site and Current.
+
+| Level of Configuration | Description |
+| ---------------------- | ----------------------------------- |
+| Global Configuration | Default Mermaid Configurations |
+| Site Configuration | Configurations made by site owner |
+| Current Configuration | Configurations made by Implementors |
+
+# Limits to Modifying Configurations
+
+**secure Array**
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ------------------------------------------------ | ----- | -------- | -------------- |
+| secure | Array of parameters excluded from init directive | Array | Required | Any parameters |
+
+The modifiable parts of the Configuration are limited by the secure array, which is an array of immutable parameters, this array can be expanded by site owners.
+
+**Notes**: secure arrays work like nesting dolls, with the Global Configurationsβ secure array holding the default and immutable list of immutable parameters, or the smallest doll, to which site owners may add to, but implementors may not modify it.
+
+# Secure Arrays
+
+Site owners can add to the **secure** array using this command:
+mermaidAPI.initialize( { startOnLoad: true, secure: ['parameter1', 'parameter2'] } );
+
+Default values for the `secure array` consists of: ['secure', 'securityLevel', 'startOnLoad', 'maxTextSize']. These default values are immutable.
+
+Implementors can only modify configurations using directives, and cannot change the `secure` array.
+
+# Modifying Configurations and directives:
+
+The Two types of directives: are `init` (or `initialize`) and `wrap`.
+
+::: tip
+All directives are enclosed in `%%{ }%%`
+:::
+
+Older versions of mermaid will not parse directives because `%%` will comment out the directive. This makes the update backwards-compatible.
+
+# Init
+
+`init`, or `initialize`: this directive gives the user the ability to overwrite and change the values for any configuration parameters not set in the secure array.
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ----------------------- | --------- | -------- | ----------------------------------------------- |
+| init | modifies configurations | Directive | Optional | Any parameters not included in the secure array |
+
+::: tip
+init would be an argument-directive: `%%{init: { **insert argument here**}}%%`
+
+The json object that is passed as {**argument** } must be valid, quoted json or it will be ignored.
+**for example**:
+
+`%%{init: {"theme": "default", "logLevel": 1 }}%%`
+
+Configurations that are passed through init cannot change the parameters in a secure array at a higher level. In the event of a collision, mermaid will give priority to secure arrays and parse the request without changing the values of those parameters in conflict.
+
+When deployed within code, init is called before the graph/diagram description.
+:::
+
+**for example**:
+
+```mmd
+%%{init: {"theme": "default", "logLevel": 1 }}%%
+ graph LR
+ a-->b
+ b-->c
+ c-->d
+ d-->e
+ e-->f
+ f-->g
+ g-->
+```
+
+# Wrap
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ----------------------------- | --------- | -------- | ---------- |
+| wrap | a callable text-wrap function | Directive | Optional | %%{wrap}%% |
+
+::: tip
+Wrap is a function that is currently only deployable for sequence diagrams.
+
+Wrap respects a manually added , so if the user wants to break up their text, they have full control over line breaks by adding tags.
+
+It is a non-argument directive and can be executed thusly:
+
+`%%{wrap}%%` .
+:::
+
+**An example of text wrapping in a sequence diagram**:
+
+![Image showing wrapped text](img/wrapped text.png)
+
+# Resetting Configurations:
+
+There are two more functions in the mermaidAPI that can be called by site owners: **reset** and **globalReset**.
+
+**reset**: resets the configuration to whatever the last configuration was. This can be done to undo more recent changes set from the last mermaidAPI.initialize({...}) configuration.
+
+**globalReset** will reset both the current configuration AND the site configuration back to the global defaults.
+
+**Notes**: Both `reset` and `globalReset` are only available to site owners, and as such implementors have to edit their configs using `init`.
+
+# Additional Utils to mermaid
+
+β’ **memoize**: simple caching for computationally expensive functions, reducing rendering time by about 90%.
+
+β’ **assignWithDepth** - an improvement on previous functions with config.js and `Object.assign`. The purpose of this function is to provide a sane mechanism for merging objects, similar to `object.assign`, but with depth.
+
+Example of **assignWithDepth**:
+
+![Image showing assignWithDepth](img/assignWithDepth.png)
+
+Example of **object.Assign**:
+
+![Image showing object.assign without depth](img/object.assign without depth.png)
+
+β’ **calculateTextDimensions**, **calculateTextWidth**οΌ and **calculateTextHeight** - for measuring text dimensions, width and height.
+
+**Notes**: For more information on usage, parameters, and return info for these new functions take a look at the jsdocs for them in the utils package.
+
+# New API Requests Introduced in Version 8.6.0
+
+## setSiteConfig
+
+| Function | Description | Type | Values | Parameters | Returns |
+| --------------- | ------------------------------------- | ----------- | --------------------------------------- | ---------- | ---------- |
+| `setSiteConfig` | Sets the siteConfig to desired values | Put Request | Any Values, except ones in secure array | conf | siteConfig |
+
+::: tip
+Sets the siteConfig. The siteConfig is a protected configuration for repeat use. Calls to reset() will reset
+the currentConfig to siteConfig. Calls to reset(configApi.defaultConfig) will reset siteConfig and currentConfig
+to the defaultConfig
+Note: currentConfig is set in this functionγ
+Default value: will mirror Global Config
+:::
+
+## getSiteConfig
+
+| Function | Description | Type | Values |
+| --------------- | --------------------------------------------------- | ----------- | ---------------------------------- |
+| `getSiteConfig` | Returns the current `siteConfig` base configuration | Get Request | Returns Any Values in `siteConfig` |
+
+::: tip
+Returns any values in siteConfig.
+:::
+
+## setConfig
+
+| Function | Description | Type | Values | Parameters | Returns |
+| ----------- | ------------------------------------------ | ----------- | --------------------------------- | ---------- | ---------------------------------------------- |
+| `setConfig` | Sets the `currentConfig` to desired values | Put Request | Any Values, those in secure array | conf | `currentConfig` merged with the sanitized conf |
+
+::: tip
+Sets the currentConfig. The parameter conf is sanitized based on the siteConfig.secure keys. Any
+values found in conf with key found in siteConfig.secure will be replaced with the corresponding
+siteConfig value.
+:::
+
+## getConfig
+
+| Function | Description | Type | Return Values |
+| ----------- | --------------------------- | ----------- | ------------------------------- |
+| `getConfig` | Obtains the `currentConfig` | Get Request | Any Values from `currentConfig` |
+
+::: tip
+Returns any values in currentConfig.
+:::
+
+## sanitize
+
+| Function | Description | Type | Values |
+| ---------- | ---------------------------------------- | -------------- | ------ |
+| `sanitize` | Sets the `siteConfig` to desired values. | Put Request(?) | None |
+
+::: tip
+modifies options in-place
+Ensures options parameter does not attempt to override siteConfig secure keys.
+:::
+
+## reset
+
+| Function | Description | Type | Required | Values | Parameter |
+| -------- | ------------------------------ | ----------- | -------- | ------ | --------- |
+| `reset` | Resets `currentConfig` to conf | Put Request | Required | None | conf |
+
+## conf
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ------------------------------------------------------------ | ---------- | -------- | -------------------------------------------- |
+| `conf` | base set of values, which `currentConfig` could be reset to. | Dictionary | Required | Any Values, with respect to the secure Array |
+
+::: tip
+default: current siteConfig (optional, default `getSiteConfig()`)
+:::
+
+## For more information, read [Setup](Setup.md).
diff --git a/vdocs/config/Setup.md b/vdocs/config/Setup.md
new file mode 100644
index 0000000000..bcf8ef583c
--- /dev/null
+++ b/vdocs/config/Setup.md
@@ -0,0 +1,1628 @@
+## mermaidAPI
+
+This is the API to be used when optionally handling the integration with the web page, instead of
+using the default integration provided by mermaid.js.
+
+The core of this api is the [**render**][1] function which, given a graph
+definition as text, renders the graph/diagram and returns an svg element for the graph.
+
+It is then up to the user of the API to make use of the svg, either insert it somewhere in the
+page or do something completely different.
+
+In addition to the render function, a number of behavioral configuration options are available.
+
+## Configuration
+
+**Configuration methods in Mermaid version 8.6.0 have been updated, to learn more [click
+here][2].**
+
+## **What follows are config instructions for older versions**
+
+These are the default options which can be overridden with the initialization call like so:
+
+**Example 1:**
+
+```js
+mermaid.initialize({ flowchart: { htmlLabels: false } });
+```
+
+**Example 2:**
+
+```js
+var config = {
+ startOnLoad: true,
+ flowchart: { useMaxWidth: true, htmlLabels: true, curve: 'cardinal' },
+
+ securityLevel: 'loose',
+};
+mermaid.initialize(config);
+```
+
+A summary of all options and their defaults is found [here][3].
+A description of each option follows below.
+
+## theme
+
+Theme , the CSS style sheet
+
+| Parameter | Description | Type | Required | Values |
+| --------- | --------------- | ------ | -------- | ---------------------------------------------- |
+| theme | Built in Themes | string | Optional | 'default', 'forest', 'dark', 'neutral', 'null' |
+
+**Notes:** To disable any pre-defined mermaid theme, use "null". "theme": "forest",
+"themeCSS": ".node rect { fill: red; }"
+
+## fontFamily
+
+| Parameter | Description | Type | Required | Values |
+| ---------- | ------------------------------------------------------ | ------ | -------- | --------------------------- |
+| fontFamily | specifies the font to be used in the rendered diagrams | string | Required | Any Possible CSS FontFamily |
+
+**Notes:** Default value: '"trebuchet ms", verdana, arial, sans-serif;'.
+
+## logLevel
+
+| Parameter | Description | Type | Required | Values | |
+| --------- | ----------------------------------------------------- | ------ | -------- | -------- | --------------------------------------------- |
+| logLevel | This option decides the amount of logging to be used. | string | number | Required | 'trace','debug','info','warn','error','fatal' |
+
+**Notes:**
+
+- Trace: 0
+- Debug: 1
+- Info: 2
+- Warn: 3
+- Error: 4
+- Fatal: 5 (default)
+
+## securityLevel
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | --------------------------------- | ------ | -------- | ------------------------------------------ |
+| securityLevel | Level of trust for parsed diagram | string | Required | 'sandbox', 'strict', 'loose', 'antiscript' |
+
+**Notes**:
+
+- **strict**: (**default**) tags in text are encoded, click functionality is disabled
+- **loose**: tags in text are allowed, click functionality is enabled
+- **antiscript**: html tags in text are allowed, (only script element is removed), click
+ functionality is enabled
+- **sandbox**: With this security level all rendering takes place in a sandboxed iframe. This
+ prevent any JavaScript from running in the context. This may hinder interactive functionality
+ of the diagram like scripts, popups in sequence diagram or links to other tabs/targets etc.
+
+## startOnLoad
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | -------------------------------------------- | ------- | -------- | ----------- |
+| startOnLoad | Dictates whether mermaid starts on Page load | boolean | Required | true, false |
+
+**Notes:** Default value: true
+
+## arrowMarkerAbsolute
+
+| Parameter | Description | Type | Required | Values |
+| ------------------- | ---------------------------------------------------------------------------- | ------- | -------- | ----------- |
+| arrowMarkerAbsolute | Controls whether or arrow markers in html code are absolute paths or anchors | boolean | Required | true, false |
+
+**Notes**:
+
+This matters if you are using base tag settings.
+
+Default value: false
+
+## secure
+
+This option controls which currentConfig keys are considered _secure_ and can only be changed
+via call to mermaidAPI.initialize. Calls to mermaidAPI.reinitialize cannot make changes to the
+`secure` keys in the current currentConfig. This prevents malicious graph directives from
+overriding a site's default security.
+
+**Notes**:
+
+Default value: \['secure', 'securityLevel', 'startOnLoad', 'maxTextSize']
+
+## deterministicIds
+
+This option controls if the generated ids of nodes in the SVG are generated randomly or based
+on a seed. If set to false, the IDs are generated based on the current date and thus are not
+deterministic. This is the default behaviour.
+
+**Notes**:
+
+This matters if your files are checked into sourcecontrol e.g. git and should not change unless
+content is changed.
+
+Default value: false
+
+## deterministicIDSeed
+
+This option is the optional seed for deterministic ids. if set to undefined but
+deterministicIds is true, a simple number iterator is used. You can set this attribute to base
+the seed on a static string.
+
+## flowchart
+
+The object containing configurations specific for flowcharts
+
+### diagramPadding
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ----------------------------------------------- | ------- | -------- | ------------------ |
+| diagramPadding | Amount of padding around the diagram as a whole | Integer | Required | Any Positive Value |
+
+**Notes:**
+
+The amount of padding around the diagram as a whole so that embedded diagrams have margins,
+expressed in pixels
+
+Default value: 8
+
+### htmlLabels
+
+| Parameter | Description | Type | Required | Values |
+| ---------- | -------------------------------------------------------------------------------------------- | ------- | -------- | ----------- |
+| htmlLabels | Flag for setting whether or not a html tag should be used for rendering labels on the edges. | boolean | Required | true, false |
+
+**Notes:** Default value: true.
+
+### nodeSpacing
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | --------------------------------------------------- | ------- | -------- | ------------------- |
+| nodeSpacing | Defines the spacing between nodes on the same level | Integer | Required | Any positive Number |
+
+**Notes:**
+
+Pertains to horizontal spacing for TB (top to bottom) or BT (bottom to top) graphs, and the
+vertical spacing for LR as well as RL graphs.\*\*
+
+Default value: 50
+
+### rankSpacing
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------------------------------------------------- | ------- | -------- | ------------------- |
+| rankSpacing | Defines the spacing between nodes on different levels | Integer | Required | Any Positive Number |
+
+**Notes**:
+
+Pertains to vertical spacing for TB (top to bottom) or BT (bottom to top), and the horizontal
+spacing for LR as well as RL graphs.
+
+Default value 50
+
+### curve
+
+| Parameter | Description | Type | Required | Values |
+| --------- | -------------------------------------------------- | ------ | -------- | ----------------------------- |
+| curve | Defines how mermaid renders curves for flowcharts. | string | Required | 'basis', 'linear', 'cardinal' |
+
+**Notes:**
+
+Default Value: 'basis'
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See notes | boolean | 4 | true, false |
+
+**Notes:**
+
+When this flag is set the height and width is set to 100% and is then scaling with the
+available space if not the absolute space required is used.
+
+Default value: true
+
+### defaultRenderer
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ----------- | ------- | -------- | ----------------------- |
+| defaultRenderer | See notes | boolean | 4 | dagre-d3, dagre-wrapper |
+
+**Notes:**
+
+Decides which rendering engine that is to be used for the rendering. Legal values are:
+dagre-d3 dagre-wrapper - wrapper for dagre implemented in mermaid
+
+Default value: 'dagre-wrapper'
+
+## sequence
+
+The object containing configurations specific for sequence diagrams
+
+### activationWidth
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ---------------------------- | ------- | -------- | ------------------ |
+| activationWidth | Width of the activation rect | Integer | Required | Any Positive Value |
+
+**Notes:** Default value :10
+
+### diagramMarginX
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ---------------------------------------------------- | ------- | -------- | ------------------ |
+| diagramMarginX | Margin to the right and left of the sequence diagram | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 50
+
+### diagramMarginY
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ------------------------------------------------- | ------- | -------- | ------------------ |
+| diagramMarginY | Margin to the over and under the sequence diagram | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### actorMargin
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | --------------------- | ------- | -------- | ------------------ |
+| actorMargin | Margin between actors | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 50
+
+### width
+
+| Parameter | Description | Type | Required | Values |
+| --------- | -------------------- | ------- | -------- | ------------------ |
+| width | Width of actor boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 150
+
+### height
+
+| Parameter | Description | Type | Required | Values |
+| --------- | --------------------- | ------- | -------- | ------------------ |
+| height | Height of actor boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 65
+
+### boxMargin
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ------------------------ | ------- | -------- | ------------------ |
+| boxMargin | Margin around loop boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### boxTextMargin
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | -------------------------------------------- | ------- | -------- | ------------------ |
+| boxTextMargin | Margin around the text in loop/alt/opt boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 5
+
+### noteMargin
+
+| Parameter | Description | Type | Required | Values |
+| ---------- | ------------------- | ------- | -------- | ------------------ |
+| noteMargin | margin around notes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### messageMargin
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | ---------------------- | ------- | -------- | ------------------ |
+| messageMargin | Space between messages | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 35
+
+### messageAlign
+
+| Parameter | Description | Type | Required | Values |
+| ------------ | --------------------------- | ------ | -------- | ------------------------- |
+| messageAlign | Multiline message alignment | string | Required | 'left', 'center', 'right' |
+
+**Notes:** Default value: 'center'
+
+### mirrorActors
+
+| Parameter | Description | Type | Required | Values |
+| ------------ | --------------------------- | ------- | -------- | ----------- |
+| mirrorActors | Mirror actors under diagram | boolean | Required | true, false |
+
+**Notes:** Default value: true
+
+### forceMenus
+
+| Parameter | Description | Type | Required | Values |
+| ---------- | ----------------------------------------------------------------------- | ------- | -------- | ----------- |
+| forceMenus | forces actor popup menus to always be visible (to support E2E testing). | Boolean | Required | True, False |
+
+**Notes:**
+
+Default value: false.
+
+### bottomMarginAdj
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ------------------------------------------ | ------- | -------- | ------------------ |
+| bottomMarginAdj | Prolongs the edge of the diagram downwards | Integer | Required | Any Positive Value |
+
+**Notes:**
+
+Depending on css styling this might need adjustment.
+
+Default value: 1
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See Notes | boolean | Required | true, false |
+
+**Notes:** When this flag is set to true, the height and width is set to 100% and is then
+scaling with the available space. If set to false, the absolute space required is used.
+
+Default value: true
+
+### rightAngles
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ------------------------------------ | ------- | -------- | ----------- |
+| rightAngles | display curve arrows as right angles | boolean | Required | true, false |
+
+**Notes:**
+
+This will display arrows that start and begin at the same node as right angles, rather than a
+curve
+
+Default value: false
+
+### showSequenceNumbers
+
+| Parameter | Description | Type | Required | Values |
+| ------------------- | ------------------------------- | ------- | -------- | ----------- |
+| showSequenceNumbers | This will show the node numbers | boolean | Required | true, false |
+
+**Notes:** Default value: false
+
+### actorFontSize
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | -------------------------------------------------- | ------- | -------- | ------------------ |
+| actorFontSize | This sets the font size of the actor's description | Integer | Require | Any Positive Value |
+
+**Notes:** **Default value 14**..
+
+### actorFontFamily
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ---------------------------------------------------- | ------ | -------- | --------------------------- |
+| actorFontFamily | This sets the font family of the actor's description | string | Required | Any Possible CSS FontFamily |
+
+**Notes:** Default value: "'Open Sans", sans-serif'
+
+### actorFontWeight
+
+This sets the font weight of the actor's description
+
+**Notes:** Default value: 400.
+
+### noteFontSize
+
+| Parameter | Description | Type | Required | Values |
+| ------------ | ----------------------------------------------- | ------- | -------- | ------------------ |
+| noteFontSize | This sets the font size of actor-attached notes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 14
+
+### noteFontFamily
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | -------------------------------------------------- | ------ | -------- | --------------------------- |
+| noteFontFamily | This sets the font family of actor-attached notes. | string | Required | Any Possible CSS FontFamily |
+
+**Notes:** Default value: ''"trebuchet ms", verdana, arial, sans-serif'
+
+### noteFontWeight
+
+This sets the font weight of the note's description
+
+**Notes:** Default value: 400
+
+### noteAlign
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ---------------------------------------------------- | ------ | -------- | ------------------------- |
+| noteAlign | This sets the text alignment of actor-attached notes | string | required | 'left', 'center', 'right' |
+
+**Notes:** Default value: 'center'
+
+### messageFontSize
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ----------------------------------------- | ------- | -------- | ------------------- |
+| messageFontSize | This sets the font size of actor messages | Integer | Required | Any Positive Number |
+
+**Notes:** Default value: 16
+
+### messageFontFamily
+
+| Parameter | Description | Type | Required | Values |
+| ----------------- | ------------------------------------------- | ------ | -------- | --------------------------- |
+| messageFontFamily | This sets the font family of actor messages | string | Required | Any Possible CSS FontFamily |
+
+**Notes:** Default value: '"trebuchet ms", verdana, arial, sans-serif'
+
+### messageFontWeight
+
+This sets the font weight of the message's description
+
+**Notes:** Default value: 400.
+
+### wrap
+
+This sets the auto-wrap state for the diagram
+
+**Notes:** Default value: false.
+
+### wrapPadding
+
+This sets the auto-wrap padding for the diagram (sides only)
+
+**Notes:** Default value: 0.
+
+### labelBoxWidth
+
+This sets the width of the loop-box (loop, alt, opt, par)
+
+**Notes:** Default value: 50.
+
+### labelBoxHeight
+
+This sets the height of the loop-box (loop, alt, opt, par)
+
+**Notes:** Default value: 20.
+
+## gantt
+
+The object containing configurations specific for gantt diagrams
+
+### titleTopMargin
+
+### titleTopMargin
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ---------------------------------------------- | ------- | -------- | ------------------ |
+| titleTopMargin | Margin top for the text over the gantt diagram | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 25
+
+### barHeight
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ----------------------------------- | ------- | -------- | ------------------ |
+| barHeight | The height of the bars in the graph | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 20
+
+### barGap
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ---------------------------------------------------------------- | ------- | -------- | ------------------ |
+| barGap | The margin between the different activities in the gantt diagram | Integer | Optional | Any Positive Value |
+
+**Notes:** Default value: 4
+
+### topPadding
+
+| Parameter | Description | Type | Required | Values |
+| ---------- | -------------------------------------------------------------------------- | ------- | -------- | ------------------ |
+| topPadding | Margin between title and gantt diagram and between axis and gantt diagram. | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 50
+
+### rightPadding
+
+| Parameter | Description | Type | Required | Values |
+| ------------ | ----------------------------------------------------------------------- | ------- | -------- | ------------------ |
+| rightPadding | The space allocated for the section name to the right of the activities | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 75
+
+### leftPadding
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ---------------------------------------------------------------------- | ------- | -------- | ------------------ |
+| leftPadding | The space allocated for the section name to the left of the activities | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 75
+
+### gridLineStartPadding
+
+| Parameter | Description | Type | Required | Values |
+| -------------------- | -------------------------------------------- | ------- | -------- | ------------------ |
+| gridLineStartPadding | Vertical starting position of the grid lines | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 35
+
+### fontSize
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ----------- | ------- | -------- | ------------------ |
+| fontSize | Font size | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 11
+
+### sectionFontSize
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ---------------------- | ------- | -------- | ------------------ |
+| sectionFontSize | Font size for sections | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 11
+
+### numberSectionStyles
+
+| Parameter | Description | Type | Required | Values |
+| ------------------- | ---------------------------------------- | ------- | -------- | ------------------ |
+| numberSectionStyles | The number of alternating section styles | Integer | 4 | Any Positive Value |
+
+**Notes:** Default value: 4
+
+### axisFormat
+
+| Parameter | Description | Type | Required | Values |
+| ---------- | --------------------------- | ---- | -------- | ---------------- |
+| axisFormat | Datetime format of the axis | 3 | Required | Date in yy-mm-dd |
+
+**Notes:**
+
+This might need adjustment to match your locale and preferences
+
+Default value: '%Y-%m-%d'.
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See notes | boolean | 4 | true, false |
+
+**Notes:**
+
+When this flag is set the height and width is set to 100% and is then scaling with the
+available space if not the absolute space required is used.
+
+Default value: true
+
+### topAxis
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ----------- | ------- | -------- | ----------- |
+| topAxis | See notes | Boolean | 4 | True, False |
+
+**Notes:** when this flag is set date labels will be added to the top of the chart
+
+**Default value false**.
+
+## journey
+
+The object containing configurations specific for journey diagrams
+
+### diagramMarginX
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ---------------------------------------------------- | ------- | -------- | ------------------ |
+| diagramMarginX | Margin to the right and left of the sequence diagram | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 50
+
+### diagramMarginY
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | -------------------------------------------------- | ------- | -------- | ------------------ |
+| diagramMarginY | Margin to the over and under the sequence diagram. | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### leftMargin
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | --------------------- | ------- | -------- | ------------------ |
+| actorMargin | Margin between actors | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 50
+
+### width
+
+| Parameter | Description | Type | Required | Values |
+| --------- | -------------------- | ------- | -------- | ------------------ |
+| width | Width of actor boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 150
+
+### height
+
+| Parameter | Description | Type | Required | Values |
+| --------- | --------------------- | ------- | -------- | ------------------ |
+| height | Height of actor boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 65
+
+### boxMargin
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ------------------------ | ------- | -------- | ------------------ |
+| boxMargin | Margin around loop boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### boxTextMargin
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | -------------------------------------------- | ------- | -------- | ------------------ |
+| boxTextMargin | Margin around the text in loop/alt/opt boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 5
+
+### noteMargin
+
+| Parameter | Description | Type | Required | Values |
+| ---------- | ------------------- | ------- | -------- | ------------------ |
+| noteMargin | Margin around notes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### messageMargin
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | ----------------------- | ------- | -------- | ------------------ |
+| messageMargin | Space between messages. | Integer | Required | Any Positive Value |
+
+**Notes:**
+
+Space between messages.
+
+Default value: 35
+
+### messageAlign
+
+| Parameter | Description | Type | Required | Values |
+| ------------ | --------------------------- | ---- | -------- | ------------------------- |
+| messageAlign | Multiline message alignment | 3 | 4 | 'left', 'center', 'right' |
+
+**Notes:** Default value: 'center'
+
+### bottomMarginAdj
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ------------------------------------------ | ------- | -------- | ------------------ |
+| bottomMarginAdj | Prolongs the edge of the diagram downwards | Integer | 4 | Any Positive Value |
+
+**Notes:**
+
+Depending on css styling this might need adjustment.
+
+Default value: 1
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See notes | boolean | 4 | true, false |
+
+**Notes:**
+
+When this flag is set the height and width is set to 100% and is then scaling with the
+available space if not the absolute space required is used.
+
+Default value: true
+
+### rightAngles
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | --------------------------------- | ---- | -------- | ----------- |
+| rightAngles | Curved Arrows become Right Angles | 3 | 4 | true, false |
+
+**Notes:**
+
+This will display arrows that start and begin at the same node as right angles, rather than a
+curves
+
+Default value: false
+
+## useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See notes | boolean | 4 | true, false |
+
+**Notes:**
+
+When this flag is set the height and width is set to 100% and is then scaling with the
+available space if not the absolute space required is used.
+
+Default value: true
+
+## defaultRenderer
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ----------- | ------- | -------- | ----------------------- |
+| defaultRenderer | See notes | boolean | 4 | dagre-d3, dagre-wrapper |
+
+**Notes**:
+
+Decides which rendering engine that is to be used for the rendering. Legal values are:
+dagre-d3 dagre-wrapper - wrapper for dagre implemented in mermaid
+
+Default value: 'dagre-d3'
+
+## useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See notes | boolean | 4 | true, false |
+
+**Notes:**
+
+When this flag is set the height and width is set to 100% and is then scaling with the
+available space if not the absolute space required is used.
+
+Default value: true
+
+## defaultRenderer
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ----------- | ------- | -------- | ----------------------- |
+| defaultRenderer | See notes | boolean | 4 | dagre-d3, dagre-wrapper |
+
+**Notes:**
+
+Decides which rendering engine that is to be used for the rendering. Legal values are:
+dagre-d3 dagre-wrapper - wrapper for dagre implemented in mermaid
+
+Default value: 'dagre-d3'
+
+## er
+
+The object containing configurations specific for entity relationship diagrams
+
+### diagramPadding
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ----------------------------------------------- | ------- | -------- | ------------------ |
+| diagramPadding | Amount of padding around the diagram as a whole | Integer | Required | Any Positive Value |
+
+**Notes:**
+
+The amount of padding around the diagram as a whole so that embedded diagrams have margins,
+expressed in pixels
+
+Default value: 20
+
+### layoutDirection
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ---------------------------------------- | ------ | -------- | ---------------------- |
+| layoutDirection | Directional bias for layout of entities. | string | Required | "TB", "BT", "LR", "RL" |
+
+**Notes:**
+
+'TB' for Top-Bottom, 'BT'for Bottom-Top, 'LR' for Left-Right, or 'RL' for Right to Left.
+
+T = top, B = bottom, L = left, and R = right.
+
+Default value: 'TB'
+
+### minEntityWidth
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ---------------------------------- | ------- | -------- | ------------------ |
+| minEntityWidth | The minimum width of an entity box | Integer | Required | Any Positive Value |
+
+**Notes:** Expressed in pixels. Default value: 100
+
+### minEntityHeight
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ----------------------------------- | ------- | -------- | ------------------ |
+| minEntityHeight | The minimum height of an entity box | Integer | 4 | Any Positive Value |
+
+**Notes:** Expressed in pixels Default value: 75
+
+### entityPadding
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | ------------------------------------------------------------ | ------- | -------- | ------------------ |
+| entityPadding | Minimum internal padding between text in box and box borders | Integer | 4 | Any Positive Value |
+
+**Notes:**
+
+The minimum internal padding between text in an entity box and the enclosing box borders,
+expressed in pixels.
+
+Default value: 15
+
+### stroke
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ----------------------------------- | ------ | -------- | -------------------- |
+| stroke | Stroke color of box edges and lines | string | 4 | Any recognized color |
+
+**Notes:** Default value: 'gray'
+
+### fill
+
+| Parameter | Description | Type | Required | Values |
+| --------- | -------------------------- | ------ | -------- | -------------------- |
+| fill | Fill color of entity boxes | string | 4 | Any recognized color |
+
+**Notes:** Default value: 'honeydew'
+
+### fontSize
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ------------------- | ------- | -------- | ------------------ |
+| fontSize | Font Size in pixels | Integer | | Any Positive Value |
+
+**Notes:**
+
+Font size (expressed as an integer representing a number of pixels) Default value: 12
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See Notes | boolean | Required | true, false |
+
+**Notes:**
+
+When this flag is set to true, the diagram width is locked to 100% and scaled based on
+available space. If set to false, the diagram reserves its absolute width.
+
+Default value: true
+
+## pie
+
+The object containing configurations specific for pie diagrams
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See Notes | boolean | Required | true, false |
+
+**Notes:**
+
+When this flag is set to true, the diagram width is locked to 100% and scaled based on
+available space. If set to false, the diagram reserves its absolute width.
+
+Default value: true
+
+## requirement
+
+The object containing configurations specific for req diagrams
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See Notes | boolean | Required | true, false |
+
+**Notes:**
+
+When this flag is set to true, the diagram width is locked to 100% and scaled based on
+available space. If set to false, the diagram reserves its absolute width.
+
+Default value: true
+
+## c4
+
+The object containing configurations specific for c4 diagrams
+
+### diagramMarginX
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ---------------------------------------------- | ------- | -------- | ------------------ |
+| diagramMarginX | Margin to the right and left of the c4 diagram | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 50
+
+### diagramMarginY
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ------------------------------------------- | ------- | -------- | ------------------ |
+| diagramMarginY | Margin to the over and under the c4 diagram | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### c4ShapeMargin
+
+| Parameter | Description | Type | Required | Values |
+| ------------- | --------------------- | ------- | -------- | ------------------ |
+| c4ShapeMargin | Margin between shapes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 50
+
+### c4ShapePadding
+
+| Parameter | Description | Type | Required | Values |
+| -------------- | ---------------------- | ------- | -------- | ------------------ |
+| c4ShapePadding | Padding between shapes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 20
+
+### width
+
+| Parameter | Description | Type | Required | Values |
+| --------- | --------------------- | ------- | -------- | ------------------ |
+| width | Width of person boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 216
+
+### height
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ---------------------- | ------- | -------- | ------------------ |
+| height | Height of person boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 60
+
+### boxMargin
+
+| Parameter | Description | Type | Required | Values |
+| --------- | ------------------- | ------- | -------- | ------------------ |
+| boxMargin | Margin around boxes | Integer | Required | Any Positive Value |
+
+**Notes:** Default value: 10
+
+### useMaxWidth
+
+| Parameter | Description | Type | Required | Values |
+| ----------- | ----------- | ------- | -------- | ----------- |
+| useMaxWidth | See Notes | boolean | Required | true, false |
+
+**Notes:** When this flag is set to true, the height and width is set to 100% and is then
+scaling with the available space. If set to false, the absolute space required is used.
+
+Default value: true
+
+### c4ShapeInRow
+
+| Parameter | Description | Type | Required | Values |
+| ------------ | ----------- | ------- | -------- | ------------------ |
+| c4ShapeInRow | See Notes | Integer | Required | Any Positive Value |
+
+**Notes:** How many shapes to place in each row.
+
+Default value: 4
+
+### c4BoundaryInRow
+
+| Parameter | Description | Type | Required | Values |
+| --------------- | ----------- | ------- | -------- | ------------------ |
+| c4BoundaryInRow | See Notes | Integer | Required | Any Positive Value |
+
+**Notes:** How many boundarys to place in each row.
+
+Default value: 2
+
+### personFontSize
+
+This sets the font size of Person shape for the diagram
+
+**Notes:** Default value: 14.
+
+### personFontFamily
+
+This sets the font family of Person shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### personFontWeight
+
+This sets the font weight of Person shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_personFontSize
+
+This sets the font size of External Person shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_personFontFamily
+
+This sets the font family of External Person shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_personFontWeight
+
+This sets the font weight of External Person shape for the diagram
+
+**Notes:** Default value: normal.
+
+### systemFontSize
+
+This sets the font size of System shape for the diagram
+
+**Notes:** Default value: 14.
+
+### systemFontFamily
+
+This sets the font family of System shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### systemFontWeight
+
+This sets the font weight of System shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_systemFontSize
+
+This sets the font size of External System shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_systemFontFamily
+
+This sets the font family of External System shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_systemFontWeight
+
+This sets the font weight of External System shape for the diagram
+
+**Notes:** Default value: normal.
+
+### system_dbFontSize
+
+This sets the font size of System DB shape for the diagram
+
+**Notes:** Default value: 14.
+
+### system_dbFontFamily
+
+This sets the font family of System DB shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### system_dbFontWeight
+
+This sets the font weight of System DB shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_system_dbFontSize
+
+This sets the font size of External System DB shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_system_dbFontFamily
+
+This sets the font family of External System DB shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_system_dbFontWeight
+
+This sets the font weight of External System DB shape for the diagram
+
+**Notes:** Default value: normal.
+
+### system_queueFontSize
+
+This sets the font size of System Queue shape for the diagram
+
+**Notes:** Default value: 14.
+
+### system_queueFontFamily
+
+This sets the font family of System Queue shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### system_queueFontWeight
+
+This sets the font weight of System Queue shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_system_queueFontSize
+
+This sets the font size of External System Queue shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_system_queueFontFamily
+
+This sets the font family of External System Queue shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_system_queueFontWeight
+
+This sets the font weight of External System Queue shape for the diagram
+
+**Notes:** Default value: normal.
+
+### boundaryFontSize
+
+This sets the font size of Boundary shape for the diagram
+
+**Notes:** Default value: 14.
+
+### boundaryFontFamily
+
+This sets the font family of Boundary shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### boundaryFontWeight
+
+This sets the font weight of Boundary shape for the diagram
+
+**Notes:** Default value: normal.
+
+### messageFontSize
+
+This sets the font size of Message shape for the diagram
+
+**Notes:** Default value: 12.
+
+### messageFontFamily
+
+This sets the font family of Message shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### messageFontWeight
+
+This sets the font weight of Message shape for the diagram
+
+**Notes:** Default value: normal.
+
+### containerFontSize
+
+This sets the font size of Container shape for the diagram
+
+**Notes:** Default value: 14.
+
+### containerFontFamily
+
+This sets the font family of Container shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### containerFontWeight
+
+This sets the font weight of Container shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_containerFontSize
+
+This sets the font size of External Container shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_containerFontFamily
+
+This sets the font family of External Container shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_containerFontWeight
+
+This sets the font weight of External Container shape for the diagram
+
+**Notes:** Default value: normal.
+
+### container_dbFontSize
+
+This sets the font size of Container DB shape for the diagram
+
+**Notes:** Default value: 14.
+
+### container_dbFontFamily
+
+This sets the font family of Container DB shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### container_dbFontWeight
+
+This sets the font weight of Container DB shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_container_dbFontSize
+
+This sets the font size of External Container DB shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_container_dbFontFamily
+
+This sets the font family of External Container DB shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_container_dbFontWeight
+
+This sets the font weight of External Container DB shape for the diagram
+
+**Notes:** Default value: normal.
+
+### container_queueFontSize
+
+This sets the font size of Container Queue shape for the diagram
+
+**Notes:** Default value: 14.
+
+### container_queueFontFamily
+
+This sets the font family of Container Queue shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### container_queueFontWeight
+
+This sets the font weight of Container Queue shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_container_queueFontSize
+
+This sets the font size of External Container Queue shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_container_queueFontFamily
+
+This sets the font family of External Container Queue shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_container_queueFontWeight
+
+This sets the font weight of External Container Queue shape for the diagram
+
+**Notes:** Default value: normal.
+
+### componentFontSize
+
+This sets the font size of Component shape for the diagram
+
+**Notes:** Default value: 14.
+
+### componentFontFamily
+
+This sets the font family of Component shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### componentFontWeight
+
+This sets the font weight of Component shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_componentFontSize
+
+This sets the font size of External Component shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_componentFontFamily
+
+This sets the font family of External Component shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_componentFontWeight
+
+This sets the font weight of External Component shape for the diagram
+
+**Notes:** Default value: normal.
+
+### component_dbFontSize
+
+This sets the font size of Component DB shape for the diagram
+
+**Notes:** Default value: 14.
+
+### component_dbFontFamily
+
+This sets the font family of Component DB shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### component_dbFontWeight
+
+This sets the font weight of Component DB shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_component_dbFontSize
+
+This sets the font size of External Component DB shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_component_dbFontFamily
+
+This sets the font family of External Component DB shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_component_dbFontWeight
+
+This sets the font weight of External Component DB shape for the diagram
+
+**Notes:** Default value: normal.
+
+### component_queueFontSize
+
+This sets the font size of Component Queue shape for the diagram
+
+**Notes:** Default value: 14.
+
+### component_queueFontFamily
+
+This sets the font family of Component Queue shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### component_queueFontWeight
+
+This sets the font weight of Component Queue shape for the diagram
+
+**Notes:** Default value: normal.
+
+### external_component_queueFontSize
+
+This sets the font size of External Component Queue shape for the diagram
+
+**Notes:** Default value: 14.
+
+### external_component_queueFontFamily
+
+This sets the font family of External Component Queue shape for the diagram
+
+**Notes:** Default value: "Open Sans", sans-serif.
+
+### external_component_queueFontWeight
+
+This sets the font weight of External Component Queue shape for the diagram
+
+**Notes:** Default value: normal.
+
+### wrap
+
+This sets the auto-wrap state for the diagram
+
+**Notes:** Default value: true.
+
+### wrapPadding
+
+This sets the auto-wrap padding for the diagram (sides only)
+
+**Notes:** Default value: 0.
+
+## parse
+
+### Parameters
+
+- `text` **[string][4]**
+- `parseError` **[Function][5]?**
+
+Returns **[boolean][6]**
+
+## setSiteConfig
+
+## setSiteConfig
+
+| Function | Description | Type | Values |
+| ------------- | ------------------------------------- | ----------- | --------------------------------------- |
+| setSiteConfig | Sets the siteConfig to desired values | Put Request | Any Values, except ones in secure array |
+
+**Notes:** Sets the siteConfig. The siteConfig is a protected configuration for repeat use. Calls
+to reset() will reset the currentConfig to siteConfig. Calls to reset(configApi.defaultConfig)
+will reset siteConfig and currentConfig to the defaultConfig Note: currentConfig is set in this
+function _Default value: At default, will mirror Global Config_
+
+### Parameters
+
+- `conf` **MermaidConfig** The base currentConfig to use as siteConfig
+
+Returns **[object][7]** The siteConfig
+
+## getSiteConfig
+
+## getSiteConfig
+
+| Function | Description | Type | Values |
+| ------------- | ------------------------------------------------- | ----------- | -------------------------------- |
+| setSiteConfig | Returns the current siteConfig base configuration | Get Request | Returns Any Values in siteConfig |
+
+**Notes**: Returns **any** values in siteConfig.
+
+Returns **[object][7]** The siteConfig
+
+## setConfig
+
+## setConfig
+
+| Function | Description | Type | Values |
+| ------------- | ------------------------------------- | ----------- | --------------------------------------- |
+| setSiteConfig | Sets the siteConfig to desired values | Put Request | Any Values, except ones in secure array |
+
+**Notes**: Sets the currentConfig. The parameter conf is sanitized based on the siteConfig.secure
+keys. Any values found in conf with key found in siteConfig.secure will be replaced with the
+corresponding siteConfig value.
+
+### Parameters
+
+- `conf` **any** The potential currentConfig
+
+Returns **any** The currentConfig merged with the sanitized conf
+
+## render
+
+Function that renders an svg with a graph from a chart definition. Usage example below.
+
+```javascript
+mermaidAPI.initialize({
+ startOnLoad: true,
+});
+$(function () {
+ const graphDefinition = 'graph TB\na-->b';
+ const cb = function (svgGraph) {
+ console.log(svgGraph);
+ };
+ mermaidAPI.render('id1', graphDefinition, cb);
+});
+```
+
+### Parameters
+
+- `id` **[string][4]** The id of the element to be rendered
+- `text` **[string][4]** The graph definition
+- `cb` **function (svgCode: [string][4], bindFunctions: function (element: [Element][8]): void): void**
+- `container` **[Element][8]** Selector to element in which a div with the graph temporarily will be
+ inserted. If one is provided a hidden div will be inserted in the body of the page instead. The
+ element will be removed when rendering is completed.
+
+Returns **void**
+
+## getConfig
+
+| Function | Description | Type | Return Values |
+| --------- | ------------------------- | ----------- | ------------------------------ |
+| getConfig | Obtains the currentConfig | Get Request | Any Values from current Config |
+
+**Notes**: Returns **any** the currentConfig
+
+Returns **any** The currentConfig
+
+## sanitize
+
+| Function | Description | Type | Values |
+| -------- | -------------------------------------- | ----------- | ------ |
+| sanitize | Sets the siteConfig to desired values. | Put Request | None |
+
+Ensures options parameter does not attempt to override siteConfig secure keys **Notes**: modifies
+options in-place
+
+### Parameters
+
+- `options` **any** The potential setConfig parameter
+
+## addDirective
+
+Pushes in a directive to the configuration
+
+### Parameters
+
+- `directive` **[object][7]** The directive to push in
+
+## reset
+
+| Function | Description | Type | Required | Values |
+| -------- | ---------------------------- | ----------- | -------- | ------ |
+| reset | Resets currentConfig to conf | Put Request | Required | None |
+
+## conf
+
+| Parameter | Description | Type | Required | Values |
+| --------- | -------------------------------------------------------------- | ---------- | -------- | -------------------------------------------- |
+| conf | base set of values, which currentConfig could be **reset** to. | Dictionary | Required | Any Values, with respect to the secure Array |
+
+**Notes**: (default: current siteConfig ) (optional, default `getSiteConfig()`)
+
+### Parameters
+
+- `config` (optional, default `siteConfig`)
+
+Returns **void**
+
+## initialize
+
+### Parameters
+
+- `options` **MermaidConfig**
+
+##
+
+## mermaidAPI configuration defaults
+
+```html
+
+```
+
+[1]: Setup.md?id=render
+[2]: 8.6.0_docs.md
+[3]: #mermaidapi-configuration-defaults
+[4]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String
+[5]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Statements/function
+[6]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean
+[7]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object
+[8]: https://developer.mozilla.org/docs/Web/API/Element
diff --git a/vdocs/config/Tutorials.md b/vdocs/config/Tutorials.md
new file mode 100644
index 0000000000..bfaa4facf9
--- /dev/null
+++ b/vdocs/config/Tutorials.md
@@ -0,0 +1,72 @@
+# Tutorials
+
+This is list of publicly available Tutorials for using Mermaid.JS . This is intended as a basic introduction for the use of the Live Editor for generating diagrams, and deploying Mermaid.JS through HTML.
+
+**Note that these tutorials might display an older interface, but the usage of the live-editor will largely be the same.**
+
+For most purposes, you can use the [Live Editor](https://mermaid-js.github.io/mermaid-live-editor), to quickly and easily render a diagram.
+
+## Live-Editor Tutorials
+
+The definitions that can be generated the Live-Editor are also backwards-compatible as of version 8.7.0.
+
+[Chris Chinchilla: Hands on - Text-based diagrams with Mermaid](https://www.youtube.com/watch?v=4_LdV1cs2sA)
+
+[GitLab Unfiltered: How to Create Mermaid Diagrams](https://www.youtube.com/watch?v=SQ9QmuTHuSI&t=438s)
+
+[GitLab Unfiltered: Emilie adds a mermaid diagram to the handbook](https://www.youtube.com/watch?v=5RQqht3NNSE)
+
+[World of Zero: I Learn How To Build Flowcharts and Signal Diagram's in Mermaid.JS](https://www.youtube.com/watch?v=7_2IroEs6Is&t=207s)
+
+[Eddie Jaoude: Can you code your diagrams?](https://www.youtube.com/watch?v=9HZzKkAqrX8)
+
+## Mermaid with HTML
+
+Examples are provided in [Getting Started](../intro/n00b-gettingStarted)
+
+**CodePen Examples:**
+
+https://codepen.io/CarlBoneri/pen/BQwZzq
+
+https://codepen.io/tdkn/pen/vZxQzd
+
+https://codepen.io/janzeteachesit/pen/OWWZKN
+
+## Mermaid with Text Area
+
+https://codepen.io/Ryuno-Ki/pen/LNxwgR
+
+## Mermaid in open source docs
+
+[K8s.io Diagram Guide](https://kubernetes.io/docs/contribute/style/diagram-guide/)
+
+[K8s.dev blog: Improve your documentation with Mermaid.js diagrams](https://www.kubernetes.dev/blog/2021/12/01/improve-your-documentation-with-mermaid.js-diagrams/)
+
+## Jupyter Integration with mermaid-js
+
+Here's an example of Python integration with mermaid-js which uses the mermaid.ink service, that displays the graph in a Jupyter notebook.
+
+```python
+import base64
+from IPython.display import Image, display
+import matplotlib.pyplot as plt
+
+def mm(graph):
+ graphbytes = graph.encode("ascii")
+ base64_bytes = base64.b64encode(graphbytes)
+ base64_string = base64_bytes.decode("ascii")
+ display(Image(url="https://mermaid.ink/img/" + base64_string))
+
+mm("""
+graph LR;
+ A--> B & C & D;
+ B--> A & E;
+ C--> A & E;
+ D--> A & E;
+ E--> B & C & D;
+""")
+```
+
+**Output**
+
+![Example graph of the Python integration](img/python-mermaid-integration.png)
diff --git a/vdocs/config/accessibility.md b/vdocs/config/accessibility.md
new file mode 100644
index 0000000000..387871de42
--- /dev/null
+++ b/vdocs/config/accessibility.md
@@ -0,0 +1,208 @@
+# Accessibility Options
+
+## Accessibility
+
+Now with Mermaid library in much wider use, we have started to work towards more accessible features, based on the feedback from the community.
+
+To begin with, we have added a new feature to Mermaid library, which is to support accessibility options, **Accessibility Title** and **Accessibility Description**.
+
+This support for accessibility options is available for all the diagrams/chart types. Also, we have tired to keep the same format for the accessibility options, so that it is easy to understand and maintain.
+
+## Defining Accessibility Options
+
+### Single line accessibility values
+
+The diagram authors can now add the accessibility options in the diagram definition, using the `accTitle` and `accDescr` keywords, where each keyword is followed by `:` and the string value for title and description like:
+
+- `accTitle: "Your Accessibility Title"` or
+- `accDescr: "Your Accessibility Description"`
+
+**When these two options are defined, they will add a coressponding `` and `` tag in the SVG.**
+
+Let us take a look at the following example with a flowchart diagram:
+
+```mermaid-example
+ graph LR
+ accTitle: Big decisions
+ accDescr: Flow chart of the decision making process
+ A[Hard] -->|Text| B(Round)
+ B --> C{Decision}
+ C -->|One| D[Result 1]
+
+```
+
+See in the code snippet above, the `accTitle` and `accDescr` are defined in the diagram definition. They result in the following tags in SVG code:
+
+![Accessibility options rendered inside SVG](img/accessibility-div-example.png)
+
+### Multi-line Accessibility title/description
+
+You can also define the accessibility options in a multi-line format, where the keyword is followed by opening curly bracket `{` and then multiple lines, followed by a closing `}`.
+
+`accTitle: My single line title value` (**_single line format_**)
+
+vs
+
+`accDescr: { My multi-line description of the diagram }` (**_multi-line format_**)
+
+Let us look at it in the following example, with same flowchart:
+
+```mermaid-example
+ graph LR
+ accTitle: Big decisions
+
+ accDescr {
+ My multi-line description
+ of the diagram
+ }
+
+ A[Hard] -->|Text| B(Round)
+ B --> C{Decision}
+ C -->|One| D[Result 1]
+
+```
+
+See in the code snippet above, the `accTitle` and `accDescr` are defined in the diagram definition. They result in the following tags in SVG code:
+
+![Accessibility options rendered inside SVG](img/accessibility-div-example-2.png)
+
+### Sample Code Snippet for other diagram types
+
+#### Sequence Diagram
+
+```mermaid-example
+ sequenceDiagram
+ accTitle: My Sequence Diagram
+ accDescr: My Sequence Diagram Description
+
+ Alice->>John: Hello John, how are you?
+ John-->>Alice: Great!
+ Alice-)John: See you later!
+```
+
+#### Class Diagram
+
+```mermaid-example
+ classDiagram
+ accTitle: My Class Diagram
+ accDescr: My Class Diagram Description
+
+ Vehicle <|-- Car
+```
+
+#### State Diagram
+
+```mermaid-example
+ stateDiagram
+ accTitle: My State Diagram
+ accDescr: My State Diagram Description
+
+ s1 --> s2
+
+```
+
+#### Entity Relationship Diagram
+
+```mermaid-example
+ erDiagram
+ accTitle: My Entity Relationship Diagram
+ accDescr: My Entity Relationship Diagram Description
+
+ CUSTOMER ||--o{ ORDER : places
+ ORDER ||--|{ LINE-ITEM : contains
+ CUSTOMER }|..|{ DELIVERY-ADDRESS : uses
+
+```
+
+#### User Journey Diagram
+
+```mermaid-example
+ journey
+ accTitle: My User Journey Diagram
+ accDescr: My User Journey Diagram Description
+
+ title My working day
+ section Go to work
+ Make tea: 5: Me
+ Go upstairs: 3: Me
+ Do work: 1: Me, Cat
+ section Go home
+ Go downstairs: 5: Me
+ Sit down: 5: Me
+
+```
+
+#### Gantt Chart
+
+```mermaid-example
+ gantt
+ accTitle: My Gantt Chart Accessibility Title
+ accDescr: My Gantt Chart Accessibility Description
+
+ title A Gantt Diagram
+ dateFormat YYYY-MM-DD
+ section Section
+ A task :a1, 2014-01-01, 30d
+ Another task :after a1 , 20d
+ section Another
+ Task in sec :2014-01-12 , 12d
+ another task : 24d
+
+```
+
+#### Pie Chart
+
+```mermaid-example
+ pie
+ accTitle: My Pie Chart Accessibility Title
+ accDescr: My Pie Chart Accessibility Description
+
+ title Key elements in Product X
+ "Calcium" : 42.96
+ "Potassium" : 50.05
+ "Magnesium" : 10.01
+ "Iron" : 5
+
+```
+
+#### Requirement Diagram
+
+```mermaid-example
+ requirementDiagram
+ accTitle: My Requirement Diagram
+ accDescr: My Requirement Diagram Description
+
+ requirement test_req {
+ id: 1
+ text: the test text.
+ risk: high
+ verifymethod: test
+ }
+
+ element test_entity {
+ type: simulation
+ }
+
+ test_entity - satisfies -> test_req
+
+```
+
+#### Gitgraph
+
+```mermaid-example
+ gitGraph
+ accTitle: My Gitgraph Accessibility Title
+ accDescr: My Gitgraph Accessibility Description
+
+ commit
+ commit
+ branch develop
+ checkout develop
+ commit
+ commit
+ checkout main
+ merge develop
+ commit
+ commit
+
+```
diff --git a/vdocs/config/directives.md b/vdocs/config/directives.md
new file mode 100644
index 0000000000..9060afdcfc
--- /dev/null
+++ b/vdocs/config/directives.md
@@ -0,0 +1,255 @@
+# Directives
+
+## Directives
+
+Directives gives a diagram author the capability to alter the appearance of a diagram before rendering by changing the applied configuration.
+
+The significance of having directives is that you have them available while writing the diagram, and can modify the default global and diagram specific configurations. So, directives are applied on top of the default configurations. The beauty of directives is that you can use them to alter configuration settings for a specific diagram, i.e. at an individual level.
+
+While directives allow you to change most of the default configuration settings, there are some that are not available, that too for security reasons. Also, you do have the _option to define the set of configurations_ that you would allow to be available to the diagram author for overriding with help of directives.
+
+## Types of Directives options
+
+Mermaid basically supports two types of configuration options to be overridden by directives.
+
+1. _General/Top Level configurations_ : These are the configurations that are available and applied to all the diagram. **Some of the most important top-level** configurations are:
+
+- theme
+- fontFamily
+- logLevel
+- securityLevel
+- startOnLoad
+- secure
+
+2. _Diagram specific configurations_ : These are the configurations that are available and applied to a specific diagram. For each diagram there are specific configuration that will alter how that particular diagram looks and behaves.
+ For example, `mirrorActors` is a configuration that is specific to the `SequenceDiagram` and alter whether the actors are mirrored or not. So this config is available only for the `SequenceDiagram` type.
+
+**NOTE:** These options listed here are not all the configuration options. To get hold of all the configuration options, please refer to the [defaultConfig.js](https://github.com/mermaid-js/mermaid/blob/develop/src/defaultConfig.js) in the source code.
+
+```
+Soon we plan to publish a complete list of top-level configurations & all the diagram specific configurations, with their possible values in the docs
+```
+
+## Declaring directives
+
+Now that we have defined the types of configurations that are available, we can learn how to declare directives.
+A directive always starts and end `%%` sign with directive text in between, like `%% {directive_text} %%`.
+
+Here the structure of a directive text is like a nested key-value pair map or a JSON object with root being _init_. Where all the general configurations are defined in the top level, and all the diagram specific configurations are defined one level deeper with diagram type as key/root for that section.
+
+Following code snippet shows the structure of a directive:
+
+```
+%%{
+ init: {
+ "theme": "dark",
+ "fontFamily": "monospace",
+ "logLevel": "info",
+ "flowchart": {
+ "htmlLabels": true,
+ "curve": "linear"
+ },
+ "sequence": {
+ "mirrorActors": true
+ }
+ }
+}%%
+```
+
+You can also define the directives in a single line, like this:
+
+```
+%%{init: { **insert argument here**}}%%
+```
+
+For example, the following code snippet:
+
+```
+%%{init: { "sequence": { "mirrorActors":false }}}%%
+```
+
+**Notes:**
+The json object that is passed as {**argument** } must be valid key value pairs and encased in quotation marks or it will be ignored.
+Valid Key Value pairs can be found in config.
+
+Example with a simple graph:
+
+```mermaid-example
+%%{init: { 'logLevel': 'debug', 'theme': 'dark' } }%%
+graph LR
+A-->B
+```
+
+Here the directive declaration will set the `logLevel` to `debug` and the `theme` to `dark` for a rendered mermaid diagram, changing the appearance of the diagram itself.
+
+Note: You can use 'init' or 'initialize' as both acceptable as init directives. Also note that `%%init%%` and `%%initialize%%` directives will be grouped together after they are parsed. This means:
+
+```mmd
+%%{init: { 'logLevel': 'debug', 'theme': 'forest' } }%%
+%%{initialize: { 'logLevel': 'fatal', "theme":'dark', 'startOnLoad': true } }%%
+...
+```
+
+parsing the above generates a single `%%init%%` JSON object below, combining the two directives and carrying over the last value given for `loglevel`:
+
+```json
+{
+ "logLevel": "fatal",
+ "theme": "dark",
+ "startOnLoad": true
+}
+```
+
+This will then be sent to `mermaid.initialize(...)` for rendering.
+
+## Directive Examples
+
+More directive examples for diagram specific configuration overrides
+Now that the concept of directives has been explained, Let us see some more examples for directives usage:
+
+### Changing Theme via directive
+
+The following code snippet changes theme to forest:
+
+`%%{init: { "theme": "forest" } }%%`
+
+Possible themes value are: `default`,`base`, `dark`, `forest` and `neutral`.
+Default Value is `default`.
+
+Example:
+
+```mermaid-example
+%%{init: { "theme": "forest" } }%%
+graph TD
+A(Forest) --> B[/Another/]
+A --> C[End]
+ subgraph section
+ B
+ C
+ end
+
+```
+
+### Changing fontFamily via directive
+
+The following code snippet changes fontFamily to rebuchet MS, Verdana, Arial, Sans-Serif:
+
+`%%{init: { "fontFamily": "Trebuchet MS, Verdana, Arial, Sans-Serif" } }%%`
+
+Example:
+
+```mermaid-example
+%%{init: { "fontFamily": "Trebuchet MS, Verdana, Arial, Sans-Serif" } }%%
+graph TD
+A(Forest) --> B[/Another/]
+A --> C[End]
+ subgraph section
+ B
+ C
+ end
+
+```
+
+### Changing logLevel via directive
+
+The following code snippet changes logLevel to 2:
+
+`%%{init: { "logLevel": 2 } }%%`
+
+Possible logLevel values are:
+
+- `1` for _debug_,
+- `2` for _info_
+- `3` for _warn_
+- `4` for _error_
+- `5` for _only fatal errors_
+
+Default Value is `5`.
+
+Example:
+
+```mermaid-example
+%%{init: { "logLevel": 2 } }%%
+graph TD
+A(Forest) --> B[/Another/]
+A --> C[End]
+ subgraph section
+ B
+ C
+ end
+```
+
+### Changing flowchart config via directive
+
+Some common flowchart configurations are:
+
+- _htmlLabels_: true/false
+- _curve_: linear/curve
+- _diagramPadding_: number
+- _useMaxWidth_: number
+
+For complete list of flowchart configurations, see [defaultConfig.js](https://github.com/mermaid-js/mermaid/blob/develop/src/defaultConfig.js) in the source code.
+_Soon we plan to publish a complete list all diagram specific configurations updated in the docs_
+
+The following code snippet changes flowchart config:
+
+`%%{init: { "flowchart": { "htmlLabels": true, "curve": "linear" } } }%%`
+
+Here were are overriding only the flowchart config, and not the general config, where HtmlLabels is set to true and curve is set to linear.
+
+```mermaid-example
+%%{init: { "flowchart": { "htmlLabels": true, "curve": "linear" } } }%%
+graph TD
+A(Forest) --> B[/Another/]
+A --> C[End]
+ subgraph section
+ B
+ C
+ end
+```
+
+### Changing Sequence diagram config via directive
+
+Some common sequence configurations are:
+
+- _width_: number
+- _height_: number
+- _messageAlign_: left, center, right
+- _mirrorActors_: boolean
+- _useMaxWidth_: boolean
+- _rightAngles_: boolean
+- _showSequenceNumbers_: boolean
+- _wrap_: boolean
+
+For complete list of sequence diagram configurations, see _defaultConfig.js_ in the source code.
+_Soon we plan to publish a complete list all diagram specific configurations updated in the docs_
+
+So, `wrap` by default has a value of `false` for sequence diagrams.
+
+Let us see an example:
+
+```mermaid-example
+sequenceDiagram
+
+Alice->Bob: Hello Bob, how are you?
+Bob->Alice: Fine, How did you mother like the book I suggested? And did you catch with the new book about alien invasion?
+Alice->Bob: Good.
+Bob->Alice: Cool
+```
+
+Now let us enable wrap for sequence diagrams.
+
+The following code snippet changes sequence diagram config for `wrap` to `true`:
+
+`%%{init: { "sequence": { "wrap": true} } }%%`
+
+Using in the diagram above, the wrap will be enabled.
+
+```mermaid-example
+%%{init: { "sequence": { "wrap": true, "width":300 } } }%%
+sequenceDiagram
+Alice->Bob: Hello Bob, how are you?
+Bob->Alice: Fine, How did you mother like the book I suggested? And did you catch with the new book about alien invasion?
+Alice->Bob: Good.
+Bob->Alice: Cool
+```
diff --git a/vdocs/config/img/accessibility-div-example-2.png b/vdocs/config/img/accessibility-div-example-2.png
new file mode 100644
index 0000000000..b257edbd03
Binary files /dev/null and b/vdocs/config/img/accessibility-div-example-2.png differ
diff --git a/vdocs/config/img/accessibility-div-example.png b/vdocs/config/img/accessibility-div-example.png
new file mode 100644
index 0000000000..2b3478f0bd
Binary files /dev/null and b/vdocs/config/img/accessibility-div-example.png differ
diff --git a/vdocs/config/img/assignWithDepth.png b/vdocs/config/img/assignWithDepth.png
new file mode 100644
index 0000000000..d00e8eb7c9
Binary files /dev/null and b/vdocs/config/img/assignWithDepth.png differ
diff --git a/vdocs/config/img/object.assign without depth.png b/vdocs/config/img/object.assign without depth.png
new file mode 100644
index 0000000000..c87505c1c1
Binary files /dev/null and b/vdocs/config/img/object.assign without depth.png differ
diff --git a/vdocs/config/img/python-mermaid-integration.png b/vdocs/config/img/python-mermaid-integration.png
new file mode 100644
index 0000000000..d54a0e97d5
Binary files /dev/null and b/vdocs/config/img/python-mermaid-integration.png differ
diff --git a/vdocs/config/img/wrapped text.png b/vdocs/config/img/wrapped text.png
new file mode 100644
index 0000000000..cf8dd12386
Binary files /dev/null and b/vdocs/config/img/wrapped text.png differ
diff --git a/vdocs/config/mermaidCLI.md b/vdocs/config/mermaidCLI.md
new file mode 100644
index 0000000000..f9473f1dd3
--- /dev/null
+++ b/vdocs/config/mermaidCLI.md
@@ -0,0 +1,3 @@
+# mermaid CLI
+
+mermaid CLI has been moved to [mermaid-cli](https://github.com/mermaid-js/mermaid-cli). Please read its documentation instead.
diff --git a/vdocs/config/n00b-advanced.md b/vdocs/config/n00b-advanced.md
new file mode 100644
index 0000000000..1e6546f5cf
--- /dev/null
+++ b/vdocs/config/n00b-advanced.md
@@ -0,0 +1,24 @@
+# Advanced n00b mermaid (Coming soon..)
+
+## splitting mermaid code from html
+
+A more condensed html code can be achieved by embedding the mermaid code in its own .js file, which is referenced like so:
+
+```
+stuff stuff
+
+