Standalone Diagram Exports¶
Diagram sources live in software/docs/diagrams/*.mmd. PDF exports are
generated automatically on every docs build (incremental — only changed
diagrams are re-rendered).
Quick start¶
cd ~/fishing-bot/software/docs
npm ci # one-time: installs @mermaid-js/mermaid-cli
./build.sh # exports PDFs + builds HTML
# PDFs: exports/pdf/*.pdf
PDF-only, no HTML:
make diagrams-pdf
Built site + report copies¶
Format |
Location |
|---|---|
Mermaid source |
|
PDF (LaTeX) |
|
PDF (downloadable) |
|
HTML render |
inline on Simulation ROS 2 Graph, Hardware ROS 2 Graph, etc. |
These Mermaid source files are copied into the built site at _static/diagrams/ during every docs build. Use them directly in reports, presentations, or mermaid.live.
Note
The HTML site renders the same diagrams inline via sphinxcontrib-mermaid. The .mmd files are the portable, version-controlled source of truth.
Diagram file |
Description |
Repo source |
Built site copy |
|---|---|---|---|
|
Closed-loop tension control (mode-agnostic) |
|
|
|
Controller state machine (MONITOR/HOOK/REGULATE) |
|
|
|
Hardware sensing/actuation chain below ROS |
|
|
|
Full ROS 2 graph — Dynamixel hardware mode |
|
|
|
Package dependencies and launch delegation |
|
|
|
MuJoCo physics chain below the ROS layer |
|
|
|
Full ROS 2 graph — MuJoCo simulation mode |
|
|
Export to SVG/PNG for LaTeX reports¶
After ./docs/build.sh, downloadable Mermaid sources are at docs/_build/html/_static/diagrams/*.mmd.
Install Mermaid CLI (npm i -g @mermaid-js/mermaid-cli) then:
cd software/docs
for f in diagrams/*.mmd; do
mmdc -i "$f" -o "exports/$(basename "${f%.mmd}").svg"
done
Or paste any .mmd file into mermaid.live and export PNG/SVG from the editor.