<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Mermaid on Youqing Han - DevOps Engineer</title>
    <link>https://hanyouqing.com/tags/mermaid/</link>
    <description>Recent content in Mermaid on Youqing Han - DevOps Engineer</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <managingEditor>ihanyouqing#gmail.com (#->@) (Youqing Han)</managingEditor>
    <webMaster>ihanyouqing#gmail.com (#->@) (Youqing Han)</webMaster>
    <lastBuildDate>Mon, 15 Sep 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://hanyouqing.com/tags/mermaid/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Marp & Mermaid Diagram Test</title>
      <link>https://hanyouqing.com/slides/2025-09/marp-mermaid-test/</link>
      <pubDate>Mon, 15 Sep 2025 00:00:00 +0000</pubDate><author>ihanyouqing#gmail.com (#->@) (Youqing Han)</author>
      <guid>https://hanyouqing.com/slides/2025-09/marp-mermaid-test/</guid>
      <description>&lt;p&gt;This is a demonstration of testing Mermaid diagram display effects in Marp slides. This slide contains various types of Mermaid diagrams to verify that the integration works correctly.&lt;/p&gt;&#xA;&lt;h2 id=&#34;test-content&#34;&gt;Test Content&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Flowchart&lt;/strong&gt;: Basic decision flow&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Architecture Diagram&lt;/strong&gt;: System component relationships&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Sequence Diagram&lt;/strong&gt;: Interaction sequences&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Class Diagram&lt;/strong&gt;: Object-oriented design&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Gantt Chart&lt;/strong&gt;: Project timeline&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Pie Chart&lt;/strong&gt;: Data visualization&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Git Workflow&lt;/strong&gt;: Version control flow&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;usage&#34;&gt;Usage&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Use ````mermaid` code blocks in slide content&lt;/li&gt;&#xA;&lt;li&gt;Diagrams are automatically rendered as SVG format&lt;/li&gt;&#xA;&lt;li&gt;Supports responsive design&lt;/li&gt;&#xA;&lt;li&gt;Consistent with slide theme&lt;/li&gt;&#xA;&lt;/ol&gt;</description>
    </item>
    <item>
      <title>Complete Guide to Mermaid Diagrams in Technical Documentation</title>
      <link>https://hanyouqing.com/blog/2025/08/mermaid-diagram-guide/</link>
      <pubDate>Fri, 22 Aug 2025 00:00:00 +0000</pubDate><author>ihanyouqing#gmail.com (#->@) (Youqing Han)</author>
      <guid>https://hanyouqing.com/blog/2025/08/mermaid-diagram-guide/</guid>
      <description>&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;&#xA;&lt;p&gt;Mermaid is a powerful text-based diagram generation tool that allows you to create beautiful diagrams using simple text syntax. This guide demonstrates how to use Mermaid diagrams effectively in technical documentation, with practical examples for DevOps engineers and technical writers.&lt;/p&gt;&#xA;&lt;h2 id=&#34;flowcharts&#34;&gt;Flowcharts&lt;/h2&gt;&#xA;&lt;p&gt;Flowcharts are perfect for visualizing processes, decision trees, and system workflows.&lt;/p&gt;&#xA;&lt;h3 id=&#34;basic-flowchart&#34;&gt;Basic Flowchart&lt;/h3&gt;&#xA;&#xA;&#xA;&#xA;&lt;div class=&#34;mermaid-wrapper my-8&#34;&gt;&#xA;  &lt;div class=&#34;mermaid-container bg-white border border-gray-200 rounded-lg shadow-sm overflow-hidden&#34;&gt;&#xA;    &#xA;    &lt;div class=&#34;mermaid-header bg-gradient-to-r from-blue-50 to-indigo-50 px-4 py-3 border-b border-gray-200 flex items-center justify-between&#34;&gt;&#xA;      &lt;div class=&#34;flex items-center space-x-2&#34;&gt;&#xA;        &lt;svg class=&#34;w-5 h-5 text-blue-600&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; viewBox=&#34;0 0 24 24&#34;&gt;&#xA;          &lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z&#34;&gt;&lt;/path&gt;&#xA;        &lt;/svg&gt;&#xA;        &lt;span class=&#34;text-sm font-medium text-gray-700&#34;&gt;Mermaid Diagram&lt;/span&gt;&#xA;      &lt;/div&gt;&#xA;      &lt;div class=&#34;flex items-center space-x-2&#34;&gt;&#xA;        &lt;button class=&#34;mermaid-copy-btn&#34; data-code=&#34;CmdyYXBoIFRECkFbU3RhcnRdIC0tPiBCe0lzIFVzZXIgTG9nZ2VkIEluP30KQiAtLT58WWVzfCBDW1Nob3cgRGFzaGJvYXJkXQpCIC0tPnxOb3wgRFtTaG93IExvZ2luIEZvcm1dCkMgLS0&amp;#43;IEVbVXNlciBBY3Rpb25zXQpEIC0tPiBGW1ZhbGlkYXRlIENyZWRlbnRpYWxzXQpGIC0tPiBHe1ZhbGlkP30KRyAtLT58WWVzfCBDCkcgLS0&amp;#43;fE5vfCBIW1Nob3cgRXJyb3JdCkggLS0&amp;#43;IEQKRSAtLT4gSVtFbmRd&#34;&gt;&#xA;          &lt;svg fill=&#34;none&#34; stroke=&#34;currentColor&#34; viewBox=&#34;0 0 24 24&#34;&gt;&#xA;            &lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z&#34;&gt;&lt;/path&gt;&#xA;          &lt;/svg&gt;&#xA;        &lt;/button&gt;&#xA;        &lt;button class=&#34;mermaid-fullscreen-btn&#34;&gt;&#xA;          &lt;svg fill=&#34;none&#34; stroke=&#34;currentColor&#34; viewBox=&#34;0 0 24 24&#34;&gt;&#xA;            &lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4&#34;&gt;&lt;/path&gt;&#xA;          &lt;/svg&gt;&#xA;        &lt;/button&gt;&#xA;      &lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;    &#xA;    &lt;div class=&#34;mermaid-content p-6 bg-gray-50&#34;&gt;&#xA;      &lt;div id=&#34;mermaid-0&#34; class=&#34;mermaid-diagram text-center&#34;&gt;&#xA;        &lt;div class=&#34;mermaid-loading flex items-center justify-center py-8&#34;&gt;&#xA;          &lt;div class=&#34;animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600&#34;&gt;&lt;/div&gt;&#xA;          &lt;span class=&#34;ml-3 text-gray-600&#34;&gt;Rendering diagram...&lt;/span&gt;&#xA;        &lt;/div&gt;&#xA;      &lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;script type=&#34;application/json&#34; class=&#34;mermaid-data&#34; data-id=&#34;mermaid-0&#34;&gt;&#xA;&#34;\ngraph TD\nA[Start] --\u003e B{Is User Logged In?}\nB --\u003e|Yes| C[Show Dashboard]\nB --\u003e|No| D[Show Login Form]\nC --\u003e E[User Actions]\nD --\u003e F[Validate Credentials]\nF --\u003e G{Valid?}\nG --\u003e|Yes| C\nG --\u003e|No| H[Show Error]\nH --\u003e D\nE --\u003e I[End]&#34;&#xA;&lt;/script&gt; &#xA;&#xA;&lt;h3 id=&#34;complex-system-architecture&#34;&gt;Complex System Architecture&lt;/h3&gt;&#xA;&#xA;&#xA;&#xA;&lt;div class=&#34;mermaid-wrapper my-8&#34;&gt;&#xA;  &lt;div class=&#34;mermaid-container bg-white border border-gray-200 rounded-lg shadow-sm overflow-hidden&#34;&gt;&#xA;    &#xA;    &lt;div class=&#34;mermaid-header bg-gradient-to-r from-blue-50 to-indigo-50 px-4 py-3 border-b border-gray-200 flex items-center justify-between&#34;&gt;&#xA;      &lt;div class=&#34;flex items-center space-x-2&#34;&gt;&#xA;        &lt;svg class=&#34;w-5 h-5 text-blue-600&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; viewBox=&#34;0 0 24 24&#34;&gt;&#xA;          &lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z&#34;&gt;&lt;/path&gt;&#xA;        &lt;/svg&gt;&#xA;        &lt;span class=&#34;text-sm font-medium text-gray-700&#34;&gt;Mermaid Diagram&lt;/span&gt;&#xA;      &lt;/div&gt;&#xA;      &lt;div class=&#34;flex items-center space-x-2&#34;&gt;&#xA;        &lt;button class=&#34;mermaid-copy-btn&#34; data-code=&#34;CmdyYXBoIFRCCnN1YmdyYXBoICJGcm9udGVuZCIKQVtSZWFjdCBBcHBdIC0tPiBCW0FQSSBHYXRld2F5XQplbmQKCiAgICBzdWJncmFwaCAiQmFja2VuZCBTZXJ2aWNlcyIKICAgICAgICBCIC0tPiBDW1VzZXIgU2VydmljZV0KICAgICAgICBCIC0tPiBEW09yZGVyIFNlcnZpY2VdCiAgICAgICAgQiAtLT4gRVtQYXltZW50IFNlcnZpY2VdCiAgICBlbmQKCiAgICBzdWJncmFwaCAiRGF0YSBMYXllciIKICAgICAgICBDIC0tPiBGWyhVc2VyIERhdGFiYXNlKV0KICAgICAgICBEIC0tPiBHWyhPcmRlciBEYXRhYmFzZSldCiAgICAgICAgRSAtLT4gSFsoUGF5bWVudCBEYXRhYmFzZSldCiAgICBlbmQKCiAgICBzdWJncmFwaCAiRXh0ZXJuYWwgU2VydmljZXMiCiAgICAgICAgRSAtLT4gSVtTdHJpcGUgQVBJXQogICAgICAgIEUgLS0&amp;#43;IEpbUGF5UGFsIEFQSV0KICAgIGVuZAoKICAgIHN1YmdyYXBoICJNb25pdG9yaW5nIgogICAgICAgIEtbUHJvbWV0aGV1c10gLS0&amp;#43;IExbR3JhZmFuYV0KICAgICAgICBNW0VMSyBTdGFja10gLS0&amp;#43;IE5bS2liYW5hXQogICAgZW5k&#34;&gt;&#xA;          &lt;svg fill=&#34;none&#34; stroke=&#34;currentColor&#34; viewBox=&#34;0 0 24 24&#34;&gt;&#xA;            &lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z&#34;&gt;&lt;/path&gt;&#xA;          &lt;/svg&gt;&#xA;        &lt;/button&gt;&#xA;        &lt;button class=&#34;mermaid-fullscreen-btn&#34;&gt;&#xA;          &lt;svg fill=&#34;none&#34; stroke=&#34;currentColor&#34; viewBox=&#34;0 0 24 24&#34;&gt;&#xA;            &lt;path stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34; stroke-width=&#34;2&#34; d=&#34;M4 8V4m0 0h4M4 4l5 5m11-1V4m0 0h-4m4 0l-5 5M4 16v4m0 0h4m-4 0l5-5m11 5l-5-5m5 5v-4m0 4h-4&#34;&gt;&lt;/path&gt;&#xA;          &lt;/svg&gt;&#xA;        &lt;/button&gt;&#xA;      &lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;    &#xA;    &lt;div class=&#34;mermaid-content p-6 bg-gray-50&#34;&gt;&#xA;      &lt;div id=&#34;mermaid-1&#34; class=&#34;mermaid-diagram text-center&#34;&gt;&#xA;        &lt;div class=&#34;mermaid-loading flex items-center justify-center py-8&#34;&gt;&#xA;          &lt;div class=&#34;animate-spin rounded-full h-8 w-8 border-b-2 border-blue-600&#34;&gt;&lt;/div&gt;&#xA;          &lt;span class=&#34;ml-3 text-gray-600&#34;&gt;Rendering diagram...&lt;/span&gt;&#xA;        &lt;/div&gt;&#xA;      &lt;/div&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;script type=&#34;application/json&#34; class=&#34;mermaid-data&#34; data-id=&#34;mermaid-1&#34;&gt;&#xA;&#34;\ngraph TB\nsubgraph \&#34;Frontend\&#34;\nA[React App] --\u003e B[API Gateway]\nend\n\n    subgraph \&#34;Backend Services\&#34;\n        B --\u003e C[User Service]\n        B --\u003e D[Order Service]\n        B --\u003e E[Payment Service]\n    end\n\n    subgraph \&#34;Data Layer\&#34;\n        C --\u003e F[(User Database)]\n        D --\u003e G[(Order Database)]\n        E --\u003e H[(Payment Database)]\n    end\n\n    subgraph \&#34;External Services\&#34;\n        E --\u003e I[Stripe API]\n        E --\u003e J[PayPal API]\n    end\n\n    subgraph \&#34;Monitoring\&#34;\n        K[Prometheus] --\u003e L[Grafana]\n        M[ELK Stack] --\u003e N[Kibana]\n    end&#34;&#xA;&lt;/script&gt; &#xA;&#xA;&lt;h2 id=&#34;sequence-diagrams&#34;&gt;Sequence Diagrams&lt;/h2&gt;&#xA;&lt;p&gt;Sequence diagrams are excellent for showing interactions between different components or services over time.&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
