Mermaid
Render Mermaid diagrams using Mermaid.js on the client.
Quick Start
Mermaid requires the Mermaid.js runtime. Include it once:
from fasthtml.common import Script
from faststrap import Mermaid
Script(src="https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js")
Mermaid("""
graph TD
A[Start] --> B{Decision}
B -->|Yes| C[Ship]
B -->|No| D[Revise]
""")
Theme and Security
Mermaid(
"""
sequenceDiagram
client->>server: request
server-->>client: response
""",
theme="dark",
security_level="strict",
)
Mermaid config is global. If you need custom config, initialize Mermaid manually before rendering.
Layout Control
HTMX Support
Faststrap re-initializes Mermaid diagrams after HTMX swaps when Mermaid.js is available.
Security Notes
Only render trusted diagrams when using relaxed security settings. Keep security_level="strict" for untrusted input.
API Reference
faststrap.components.display.mermaid.Mermaid(diagram, *, theme=None, security_level=None, min_width=None, **kwargs)
Render Mermaid diagram text inside a Mermaid container.