From e3b9a8b9d813c88cf94b718fd64be3a0f50dd793 Mon Sep 17 00:00:00 2001
From: mbdalpha <166437418+mbdalpha@users.noreply.github.com>
Date: Thu, 10 Sep 2026 20:09:31 +0100
Subject: [PATCH 1/5] Adds mermaid2 plugin
---
mkdocs.yml | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/mkdocs.yml b/mkdocs.yml
index 5f391b7..54fa858 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -44,7 +44,11 @@ markdown_extensions:
- attr_list
- footnotes
- pymdownx.details
- - pymdownx.superfences
+ - pymdownx.superfences:
+ custom_fences:
+ - name: mermaid
+ class: mermaid
+ format: !!python/name:mermaid2.fence_mermaid_custom
- md_in_html
- pymdownx.tabbed:
alternate_style: true
@@ -69,6 +73,7 @@ plugins:
custom_format: "%b %d, %Y" # e.g. "Oct 17, 2025"
timezone: Europe/Dublin
locale: en
+ - mermaid2
nav: # This is the structure of the sidebar
From 54dbf0e0d63312b7f5f3ce7a77e25245fc22ebeb Mon Sep 17 00:00:00 2001
From: mbdalpha <166437418+mbdalpha@users.noreply.github.com>
Date: Fri, 11 Sep 2026 07:42:53 +0100
Subject: [PATCH 2/5] Adds mermaid2 plugin to requirements.txt
---
requirements.txt | 2 ++
1 file changed, 2 insertions(+)
diff --git a/requirements.txt b/requirements.txt
index d840699..76b655d 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -14,4 +14,6 @@ mkdocs-material-extensions>=1.3
#Zoom in for pictures
mkdocs-glightbox
+# Mermaid diagrams plugin
+mkdocs-mermaid2-plugin
From d1d9b2a570c420d7277880a5abeca0104ba9f069 Mon Sep 17 00:00:00 2001
From: mbdalpha <166437418+mbdalpha@users.noreply.github.com>
Date: Fri, 11 Sep 2026 07:48:54 +0100
Subject: [PATCH 3/5] Adds some notes on how to use Mermaid to make diagrams
---
docs/guidelines/documentation.md | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
diff --git a/docs/guidelines/documentation.md b/docs/guidelines/documentation.md
index 64de3c9..e078ded 100644
--- a/docs/guidelines/documentation.md
+++ b/docs/guidelines/documentation.md
@@ -14,6 +14,31 @@
- Always include meaningful alt text for accessibility
- Store images in the `media/` directory relative to your markdown file
+#### Adding diagrams
+
+- [Mermaid](https://mermaid.ai/open-source) can be used to easily create diagrams to explain systems, create flowcharts, etc.
+- In order to add a Mermaid diagram into a page:
+ 1. Start a new line with triple backticks and the codeword `mermaid`.
+ 2. Type the diagram using the Mermaid syntax
+ 3. End on a new line with triple backticks
+- For example:
+````
+```mermaid
+graph LR
+ hello --> world
+ world --> again
+ again --> hello
+```
+````
+Becomes
+```mermaid
+graph LR
+ hello --> world
+ world --> again
+ again --> hello
+```
+- Reference the [Mermaid documentation](https://mermaid.ai/open-source/intro/) to learn more about how you can use Mermaid.
+
### Keeping Documentation up to Date
In general you will encounter cases where documentation is inadequate / out of date when people start complaining or asking questions. It can be very easy to issue a temporary fix or give a verbal explanation in this case but it's always best to incorporate such issues in the docs.
From 96c89772f30f6950ee5054d8f50f768f00e75c2f Mon Sep 17 00:00:00 2001
From: mbdalpha <166437418+mbdalpha@users.noreply.github.com>
Date: Sun, 13 Sep 2026 13:21:34 +0100
Subject: [PATCH 4/5] Fixes Mermaid diagram on LIDAR-Only Perception Pipeline
---
docs/departments/perception/clustering_algo.md | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/docs/departments/perception/clustering_algo.md b/docs/departments/perception/clustering_algo.md
index c00e064..bfb3937 100644
--- a/docs/departments/perception/clustering_algo.md
+++ b/docs/departments/perception/clustering_algo.md
@@ -416,14 +416,14 @@ Despite these, the pipeline provides a strong foundation for autonomous track pe
```mermaid
flowchart TD
- A[LiDAR /velodyne_points] --> B[ROI Filter]
- B --> C[Ground Plane Removal
(via /cluster/plane_model)]
- C --> D[Cluster Non-Ground Points]
- D --> E[Color Classification
(optional)]
- E --> F[Publish ConeArrayWithCovariance
/cones/lidar]
- C --> G[/cluster/filtered_point_cloud]
- D --> H[/cluster/cluster_cloud]
- A --> I[/cluster/ransac_point_cloud]
+ A["LiDAR /velodyne_points"] --> B["ROI Filter"]
+ B --> C["Ground Plane Removal
(via /cluster/plane_model)"]
+ C --> D["Cluster Non-Ground Points"]
+ D --> E["Color Classification
(optional)"]
+ E --> F["Publish ConeArrayWithCovariance
/cones/lidar"]
+ C --> G["/cluster/filtered_point_cloud"]
+ D --> H["/cluster/cluster_cloud"]
+ A --> I["/cluster/ransac_point_cloud"]
```
---
From c5cdd8dd4a046eba96fcba4ea44e602553726ab7 Mon Sep 17 00:00:00 2001
From: mbdalpha <166437418+mbdalpha@users.noreply.github.com>
Date: Sun, 13 Sep 2026 15:32:13 +0100
Subject: [PATCH 5/5] Label outer fence
---
docs/guidelines/documentation.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/guidelines/documentation.md b/docs/guidelines/documentation.md
index e078ded..6911d0e 100644
--- a/docs/guidelines/documentation.md
+++ b/docs/guidelines/documentation.md
@@ -22,7 +22,7 @@
2. Type the diagram using the Mermaid syntax
3. End on a new line with triple backticks
- For example:
-````
+````markdown
```mermaid
graph LR
hello --> world