2021-08-16 07:33:06 +00:00
<!doctype html> < html lang = en-au > < head >
< meta charset = utf-8 >
< meta http-equiv = content-language content = "en-AU" >
< meta name = viewport content = "width=device-width,initial-scale=1" >
< meta http-equiv = x-ua-compatible content = "ie=edge" >
2021-11-04 00:06:52 +00:00
< title > Diagrams and Flowcharts · Congo< / title >
< meta name = title content = "Diagrams and Flowcharts · Congo" >
< meta name = description content = "Guide to Mermaid usage in Congo" >
< link rel = canonical href = https://jpanther.github.io/congo/samples/diagrams-flowcharts/ >
2021-08-26 00:19:03 +00:00
< link type = text/css rel = stylesheet href = /congo/css/schemes/congo.min.b48d6ba061dc77186a2524fb8aac5ac3823b2679a9299ca60325abbccc9c1764c884715f0ba24b4e2776cb3814df4af1f4c854b87207cd5d4c7a254da9b55751.css integrity = "sha512-tI1roGHcdxhqJST7iqxaw4I7JnmpKZymAyWrvMycF2TIhHFfC6JLTid2yzgU30rx9MhUuHIHzV1MeiVNqbVXUQ==" >
2022-01-07 03:53:31 +00:00
< link type = text/css rel = stylesheet href = /congo/css/compiled/main.min.0616cd1037a5b5a117adb2a5811247073e87aa85bf90466b8597b7f950fea39c6daa6d034e80941fd15e7bd8c1f84e7bd1e2775064f5dfb08fd79622ef2deba3.css integrity = "sha512-BhbNEDeltaEXrbKlgRJHBz6HqoW/kEZrhZe3+VD+o5xtqm0DToCUH9Fee9jB+E570eJ3UGT137CP15Yi7y3row==" >
2021-11-04 00:06:52 +00:00
< script > function loadPreferredAppearance ( ) { localStorage . preferredAppearance === "dark" || ! ( "preferredAppearance" in localStorage ) && window . matchMedia ( "(prefers-color-scheme: dark)" ) . matches ? document . documentElement . classList . add ( "dark" ) : document . documentElement . classList . remove ( "dark" ) } function setPreferredAppearance ( a ) { a == "default" ? localStorage . removeItem ( "preferredAppearance" ) : localStorage . preferredAppearance = a , loadPreferredAppearance ( ) } loadPreferredAppearance ( ) , window . matchMedia ( "(prefers-color-scheme: dark)" ) . addListener ( loadPreferredAppearance ) < / script >
2021-08-26 00:19:03 +00:00
< link rel = apple-touch-icon sizes = 180x180 href = /congo/apple-touch-icon.png >
< link rel = icon type = image/png sizes = 32x32 href = /congo/favicon-32x32.png >
< link rel = icon type = image/png sizes = 16x16 href = /congo/favicon-16x16.png >
< link rel = manifest href = /congo/site.webmanifest >
2021-11-04 00:06:52 +00:00
< meta property = "og:title" content = "Diagrams and Flowcharts" >
< meta property = "og:description" content = "Guide to Mermaid usage in Congo" >
2021-08-16 07:33:06 +00:00
< meta property = "og:type" content = "article" >
2021-11-04 00:06:52 +00:00
< meta property = "og:url" content = "https://jpanther.github.io/congo/samples/diagrams-flowcharts/" > < meta property = "article:section" content = "samples" >
< meta property = "article:published_time" content = "2019-03-06T00:00:00+00:00" >
< meta property = "article:modified_time" content = "2019-03-06T00:00:00+00:00" >
2021-08-16 07:33:06 +00:00
< meta name = twitter:card content = "summary" >
2021-11-04 00:06:52 +00:00
< meta name = twitter:title content = "Diagrams and Flowcharts" >
< meta name = twitter:description content = "Guide to Mermaid usage in Congo" >
2022-01-07 03:53:31 +00:00
< script type = application/ld+json > { "@context" : "https://schema.org" , "@type" : "BlogPosting" , "articleSection" : "Content Samples" , "name" : "Diagrams and Flowcharts" , "headline" : "Diagrams and Flowcharts" , "description" : "Guide to Mermaid usage in Congo" , "inLanguage" : "en-AU" , "author" : { "@type" : "Person" , "name" : "Congo" } , "creator" : { "@type" : "Person" , "name" : "Congo" } , "copyrightHolder" : "Congo" , "copyrightYear" : "2019" , "dateCreated" : "2019-03-06T00:00:00\u002b00:00" , "datePublished" : "2019-03-06T00:00:00\u002b00:00" , "dateModified" : "2019-03-06T00:00:00\u002b00:00" , "url" : "https:\/\/jpanther.github.io\/congo\/samples\/diagrams-flowcharts\/" , "keywords" : [ "mermaid" , "sample" , "diagram" , "shortcodes" ] , "wordCount" : "211" } < / script >
2021-12-30 22:10:09 +00:00
< meta name = generator content = "Hugo 0.91.2" >
2021-08-16 07:33:06 +00:00
< meta name = author content = "Congo" >
< link href = https://twitter.com/ rel = me >
< link href = https://facebook.com/ rel = me >
< link href = https://linkedin.com/ rel = me >
< link href = https://youtube.com/ rel = me >
2022-01-07 03:53:31 +00:00
< script defer src = /congo/lib/mermaid/mermaid.min.96cc79e38b416095815584c2d13eb81e9024101d544bdb0bbb382a3710b1150b353617fb5c180b75b7724665f8f504de963b7c9441cb514b483cfbe55774b495.js integrity = "sha512-lsx544tBYJWBVYTC0T64HpAkEB1US9sLuzgqNxCxFQs1Nhf7XBgLdbdyRmX49QTeljt8lEHLUUtIPPvlV3S0lQ==" > < / script >
2021-11-04 00:06:52 +00:00
< script > document . addEventListener ( 'DOMContentLoaded' , b => { function a ( a ) { return getComputedStyle ( document . documentElement ) . getPropertyValue ( a ) } mermaid . initialize ( { theme : "base" , themeVariables : { background : a ( "--color-neutral" ) , primaryColor : a ( "--color-primary-200" ) , secondaryColor : a ( "--color-secondary-200" ) , tertiaryColor : a ( "--color-neutral-100" ) , primaryBorderColor : a ( "--color-primary-400" ) , secondaryBorderColor : a ( "--color-secondary-400" ) , tertiaryBorderColor : a ( "--color-neutral-400" ) , lineColor : a ( "--color-neutral-600" ) , fontFamily : "ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif" , fontSize : "16px" } } ) } ) < / script >
2021-08-16 07:33:06 +00:00
< / head >
2021-12-21 02:27:30 +00:00
< body class = "flex flex-col h-screen px-6 m-auto text-lg leading-7 bg-neutral text-neutral-900 sm:px-14 md:px-24 lg:px-32 dark:bg-neutral-800 dark:text-neutral max-w-7xl" > < header class = "flex justify-between py-6 font-semibold sm:items-center sm:py-10 text-neutral-900 dark:text-neutral" >
2021-08-16 07:33:06 +00:00
< div >
2021-08-26 00:19:03 +00:00
< a class = "hover:underline hover:underline-primary-500 hover:underline-thickness-bold hover:underline-offset-small" rel = me href = /congo/ > Congo< / a >
2021-08-16 07:33:06 +00:00
< / div >
< nav >
< ul class = "flex flex-col list-none sm:flex-row" >
2021-08-22 07:24:36 +00:00
< li class = "mb-1 text-right sm:mb-0 sm:mr-7 sm:last:mr-0" >
2021-08-26 00:19:03 +00:00
< a class = "hover:underline hover:underline-primary-500 hover:underline-thickness-bold hover:underline-offset-small" href = /congo/docs/ title = Documentation > Docs< / a >
2021-08-16 07:33:06 +00:00
< / li >
2021-08-22 07:24:36 +00:00
< li class = "mb-1 text-right sm:mb-0 sm:mr-7 sm:last:mr-0" >
2021-08-26 00:19:03 +00:00
< a class = "hover:underline hover:underline-primary-500 hover:underline-thickness-bold hover:underline-offset-small" href = /congo/samples/ title = "Content Samples" > Samples< / a >
< / li >
< li class = "mb-1 text-right sm:mb-0 sm:mr-7 sm:last:mr-0" >
< a class = "hover:underline hover:underline-primary-500 hover:underline-thickness-bold hover:underline-offset-small" href = /congo/users/ title = Users > Users< / a >
2021-08-16 07:33:06 +00:00
< / li >
2021-08-22 07:24:36 +00:00
< li class = "mb-1 text-right sm:mb-0 sm:mr-7 sm:last:mr-0" >
< a class = "hover:underline hover:underline-primary-500 hover:underline-thickness-bold hover:underline-offset-small" href = https://github.com/jpanther/congo title > GitHub< / a >
2021-08-16 07:33:06 +00:00
< / li >
< / ul >
< / nav >
< / header >
< main class = flex-grow >
< article class = max-w-prose >
< header >
2021-12-21 02:27:30 +00:00
< ol class = "text-sm text-neutral-500 dark:text-neutral-400" >
2021-08-18 08:05:12 +00:00
< li class = "inline hidden" >
2021-08-26 00:19:03 +00:00
< a class = "hover:underline hover:underline-neutral-300 dark:underline-neutral-600" href = /congo/ > Welcome to Congo! :tada:< / a > < span class = "px-1 text-primary-500" > /< / span >
2021-08-18 08:05:12 +00:00
< / li >
< li class = inline >
2021-08-26 00:19:03 +00:00
< a class = "hover:underline hover:underline-neutral-300 dark:underline-neutral-600" href = /congo/samples/ > Content Samples< / a > < span class = "px-1 text-primary-500" > /< / span >
2021-08-18 08:05:12 +00:00
< / li >
< li class = "inline hidden" >
2021-11-04 00:06:52 +00:00
< a class = "hover:underline hover:underline-neutral-300 dark:underline-neutral-600" href = /congo/samples/diagrams-flowcharts/ > Diagrams and Flowcharts< / a > < span class = "px-1 text-primary-500" > /< / span >
2021-08-18 08:05:12 +00:00
< / li >
< / ol >
2021-12-21 02:27:30 +00:00
< h1 class = "mt-0 text-4xl font-extrabold text-neutral-900 dark:text-neutral" >
2021-11-04 00:06:52 +00:00
Diagrams and Flowcharts
2021-08-22 07:24:36 +00:00
< / h1 >
2021-12-21 02:27:30 +00:00
< div class = "mt-8 mb-12 text-base text-neutral-500 dark:text-neutral-400" >
2021-08-22 07:24:36 +00:00
< div class = "flex flex-row items-center" >
2021-12-21 02:27:30 +00:00
< time datetime = "2019-03-06 00:00:00 +0000 UTC" > 6 March 2019< / time >
< span class = "px-2 text-primary-500" > · < / span > < span title = "Reading time" > 1 min< / span >
2021-08-22 07:24:36 +00:00
< / div >
2021-08-16 07:33:06 +00:00
< / div >
< / header >
< section class = "prose dark:prose-light" >
2021-11-04 00:06:52 +00:00
< p > Mermaid diagrams are supported in Congo using the < code > mermaid< / code > shortcode. Simply wrap the diagram markup within the shortcode. Congo automatically themes Mermaid diagrams to match the configured < code > colorScheme< / code > parameter.< / p >
< p > Refer to the < a href = https://jpanther.github.io/congo/docs/shortcodes/#mermaid > mermaid shortcode< / a > docs for more details.< / p >
< p > The examples below are a small selection taken from the < a href = https://mermaid-js.github.io/mermaid/ > official Mermaid docs< / a > . You can also < a href = https://raw.githubusercontent.com/jpanther/congo/dev/exampleSite/content/samples/diagrams-flowcharts.md > view the page source< / a > on GitHub to see the markup.< / p >
< h2 id = flowchart > Flowchart < a class = heading-anchor href = #flowchart aria-label = Anchor > #< / a > < / h2 >
< div class = mermaid align = center >
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[Car]
subgraph Section
C
D
E
F
G
end
< / div >
< h2 id = sequence-diagram > Sequence diagram < a class = heading-anchor href = #sequence-diagram aria-label = Anchor > #< / a > < / h2 >
< div class = mermaid align = center >
sequenceDiagram
autonumber
par Action 1
Alice->>John: Hello John, how are you?
and Action 2
Alice->>Bob: Hello Bob, how are you?
end
Alice->>+John: Hello John, how are you?
Alice->>+John: John, can you hear me?
John-->>-Alice: Hi Alice, I can hear you!
Note right of John: John is perceptive
John-->>-Alice: I feel great!
loop Every minute
John-->Alice: Great!
end
< / div >
< h2 id = class-diagram > Class diagram < a class = heading-anchor href = #class-diagram aria-label = Anchor > #< / a > < / h2 >
< div class = mermaid align = center >
classDiagram
Animal "1" < |-- Duck
Animal < |-- Fish
Animal < --o Zebra
Animal : +int age
Animal : +String gender
Animal: +isMammal()
Animal: +mate()
class Duck{
+String beakColor
+swim()
+quack()
}
class Fish{
-int sizeInFeet
-canEat()
}
class Zebra{
+bool is_wild
+run()
}
< / div >
< h2 id = entity-relationship-diagram > Entity relationship diagram < a class = heading-anchor href = #entity-relationship-diagram aria-label = Anchor > #< / a > < / h2 >
< div class = mermaid align = center >
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"
< / div >
2021-08-16 07:33:06 +00:00
< / section >
< footer class = pt-8 >
2021-11-04 00:06:52 +00:00
< div class = flex >
2021-12-21 02:27:30 +00:00
< img class = "w-24 h-24 !mt-0 !mb-0 mr-4 rounded-full" width = 96 height = 96 alt = Author src = /congo/img/author.jpg >
2021-11-04 00:06:52 +00:00
< div class = place-self-center >
2021-12-21 02:27:30 +00:00
< div class = "text-[0.6rem] leading-3 text-neutral-500 dark:text-neutral-400 uppercase" >
2021-08-18 08:05:12 +00:00
Author
< / div >
2021-08-22 07:24:36 +00:00
< div class = "font-semibold leading-6 text-neutral-800 dark:text-neutral-300" >
2021-08-16 07:33:06 +00:00
Congo
< / div >
2021-11-04 00:06:52 +00:00
< div class = "text-sm text-neutral-700 dark:text-neutral-400" > This is an example author bio, and although there’ s a stock photo of a dog here, this article was actually created by a human. 🐶< / div >
2021-12-21 02:27:30 +00:00
< div class = "text-2xl sm:text-lg" >
2021-08-22 07:24:36 +00:00
< div class = "flex flex-wrap text-neutral-400 dark:text-neutral-500" >
2021-12-21 02:27:30 +00:00
< a class = "px-1 hover:text-primary-700 dark:hover:text-primary-400" href = https://twitter.com/ target = _blank aria-label = Twitter rel = "me noopener noreferrer" >
2021-11-10 01:57:05 +00:00
< span class = "relative inline-block align-text-bottom icon" > < svg aria-hidden = "true" focusable = "false" data-prefix = "fab" data-icon = "twitter" class = "svg-inline--fa fa-twitter fa-w-16" role = "img" xmlns = "http://www.w3.org/2000/svg" viewBox = "0 0 512 512" > < path fill = "currentcolor" d = "M459.37 151.716c.325 4.548.325 9.097.325 13.645.0 138.72-105.583 298.558-298.558 298.558-59.452.0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055.0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421.0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391.0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04.0-57.828 46.782-104.934 104.934-104.934 30.213.0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z" / > < / svg >
2021-08-16 07:33:06 +00:00
< / span >
< / a >
2021-12-21 02:27:30 +00:00
< a class = "px-1 hover:text-primary-700 dark:hover:text-primary-400" href = https://facebook.com/ target = _blank aria-label = Facebook rel = "me noopener noreferrer" >
2021-11-10 01:57:05 +00:00
< span class = "relative inline-block align-text-bottom icon" > < svg aria-hidden = "true" focusable = "false" data-prefix = "fab" data-icon = "facebook" class = "svg-inline--fa fa-facebook fa-w-16" role = "img" xmlns = "http://www.w3.org/2000/svg" viewBox = "0 0 512 512" > < path fill = "currentcolor" d = "M504 256C504 119 393 8 256 8S8 119 8 256c0 123.78 90.69 226.38 209.25 245V327.69h-63V256h63v-54.64c0-62.15 37-96.48 93.67-96.48 27.14.0 55.52 4.84 55.52 4.84v61h-31.28c-30.8.0-40.41 19.12-40.41 38.73V256h68.78l-11 71.69h-57.78V501C413.31 482.38 504 379.78 504 256z" / > < / svg >
2021-08-16 07:33:06 +00:00
< / span >
< / a >
2021-12-21 02:27:30 +00:00
< a class = "px-1 hover:text-primary-700 dark:hover:text-primary-400" href = https://linkedin.com/ target = _blank aria-label = Linkedin rel = "me noopener noreferrer" >
2021-11-10 01:57:05 +00:00
< span class = "relative inline-block align-text-bottom icon" > < svg aria-hidden = "true" focusable = "false" data-prefix = "fab" data-icon = "linkedin" class = "svg-inline--fa fa-linkedin fa-w-14" role = "img" xmlns = "http://www.w3.org/2000/svg" viewBox = "0 0 448 512" > < path fill = "currentcolor" d = "M416 32H31.9C14.3 32 0 46.5.0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6.0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3zM135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3.0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2.0 38.5 17.3 38.5 38.5.0 21.3-17.2 38.5-38.5 38.5zm282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6.0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2.0 79.7 44.3 79.7 101.9V416z" / > < / svg >
2021-08-16 07:33:06 +00:00
< / span >
< / a >
2021-12-21 02:27:30 +00:00
< a class = "px-1 hover:text-primary-700 dark:hover:text-primary-400" href = https://youtube.com/ target = _blank aria-label = Youtube rel = "me noopener noreferrer" >
2021-11-10 01:57:05 +00:00
< span class = "relative inline-block align-text-bottom icon" > < svg aria-hidden = "true" focusable = "false" data-prefix = "fab" data-icon = "youtube" class = "svg-inline--fa fa-youtube fa-w-18" role = "img" xmlns = "http://www.w3.org/2000/svg" viewBox = "0 0 576 512" > < path fill = "currentcolor" d = "M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78.0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z" / > < / svg >
2021-08-16 07:33:06 +00:00
< / span >
< / a >
< / div >
< / div >
< / div >
2021-12-21 02:27:30 +00:00
< / div >
2021-08-18 08:05:12 +00:00
< div class = "pt-8 article-pagination" >
2021-08-22 07:24:36 +00:00
< hr class = "border-dotted border-neutral-300 dark:border-neutral-600" >
2021-08-16 07:33:06 +00:00
< div class = "flex justify-between pt-3" >
< span >
2021-11-04 00:06:52 +00:00
< a class = flex href = /congo/samples/charts/ >
2021-08-18 08:05:12 +00:00
< span class = "mr-3 article-pagination-direction" > ← < / span >
2021-08-16 07:33:06 +00:00
< span class = "flex flex-col" >
2021-11-10 01:57:05 +00:00
< span class = "article-pagination-title mt-[0.1rem] leading-6" > Charts< / span >
2021-12-21 02:27:30 +00:00
< span class = "mt-[0.1rem] text-xs text-neutral-500 dark:text-neutral-400" >
2021-11-04 00:06:52 +00:00
< time datetime = "2019-03-06 00:00:00 +0000 UTC" > 6 March 2019< / time >
2021-08-22 07:24:36 +00:00
< / span >
2021-08-16 07:33:06 +00:00
< / span >
< / a >
< / span >
< span >
2021-11-04 00:06:52 +00:00
< a class = "flex text-right" href = /congo/samples/emoji/ >
2021-08-16 07:33:06 +00:00
< span class = "flex flex-col" >
2021-11-10 01:57:05 +00:00
< span class = "article-pagination-title mt-[0.1rem] leading-6" > Emoji< / span >
2021-12-21 02:27:30 +00:00
< span class = "mt-[0.1rem] text-xs text-neutral-500 dark:text-neutral-400" >
2021-11-17 22:49:39 +00:00
< time datetime = "2019-03-05 00:00:00 +0000 UTC" > 5 March 2019< / time >
2021-08-22 07:24:36 +00:00
< / span >
2021-08-16 07:33:06 +00:00
< / span >
2021-08-18 08:05:12 +00:00
< span class = "ml-3 article-pagination-direction" > → < / span >
2021-08-16 07:33:06 +00:00
< / a >
< / span >
< / div >
< / div >
< / footer >
< / article >
2021-10-20 03:57:06 +00:00
< / main > < footer class = py-10 >
2021-11-04 00:06:52 +00:00
< div class = "flex justify-between" >
< div >
2021-12-21 02:27:30 +00:00
< p class = "text-sm text-neutral-500 dark:text-neutral-400" >
2021-08-16 07:33:06 +00:00
©
2022-01-07 03:53:31 +00:00
2022
2021-08-16 07:33:06 +00:00
Congo
< / p >
2021-12-21 02:27:30 +00:00
< p class = "text-xs text-neutral-400 dark:text-neutral-600" >
Powered by < a class = "hover:underline hover:underline-primary-400 hover:text-primary-500" href = https://gohugo.io/ target = _blank rel = "noopener noreferrer" > Hugo< / a > & < a class = "hover:underline hover:underline-primary-400 hover:text-primary-500" href = https://git.io/hugo-congo target = _blank rel = "noopener noreferrer" > Congo< / a >
2021-08-16 07:33:06 +00:00
< / p >
2021-11-04 00:06:52 +00:00
< / div >
< / div >
2021-08-16 07:33:06 +00:00
< / footer >
< / body >
< / html >