Expand description
graphs-tui - Terminal renderer for Mermaid and D2 diagrams
§Mermaid Flowchart Example
use graphs_tui::{render_mermaid_to_tui, RenderOptions};
let input = "flowchart LR\nA[Start] --> B[End]";
let output = render_mermaid_to_tui(input, RenderOptions::default()).unwrap();
println!("{}", output);§State Diagram Example
use graphs_tui::{render_state_diagram, RenderOptions};
let input = "stateDiagram-v2\n [*] --> Idle\n Idle --> Running";
let output = render_state_diagram(input, RenderOptions::default()).unwrap();
println!("{}", output);§Pie Chart Example
use graphs_tui::{render_pie_chart, RenderOptions};
let input = "pie\n \"Chrome\" : 65\n \"Firefox\" : 35";
let output = render_pie_chart(input, RenderOptions::default()).unwrap();
println!("{}", output);§D2 Example
use graphs_tui::{render_d2_to_tui, RenderOptions};
let input = "A -> B: connection";
let output = render_d2_to_tui(input, RenderOptions::default()).unwrap();
println!("{}", output);§Sequence Diagram Example
use graphs_tui::{render_sequence_diagram, RenderOptions};
let input = "sequenceDiagram\n Alice->>Bob: Hello\n Bob-->>Alice: Hi!";
let output = render_sequence_diagram(input, RenderOptions::default()).unwrap();
println!("{}", output);§Auto-detect Format
use graphs_tui::{render_diagram, RenderOptions};
let mermaid_input = "flowchart LR\nA --> B";
let d2_input = "A -> B";
// Automatically detects format
let _ = render_diagram(mermaid_input, RenderOptions::default());
let _ = render_diagram(d2_input, RenderOptions::default());Structs§
- Edge
- An edge connecting two nodes
- Graph
- The complete graph structure
- Node
- A node in the flowchart
- Render
Options - Options for rendering the diagram
- Subgraph
- A subgraph/group of nodes
Enums§
- Diagram
Format - Diagram format
- Direction
- Flow direction for the diagram
- Edge
Style - Style of an edge/link
- Mermaid
Error - Errors that can occur during mermaid parsing/rendering
- Node
Shape - Shape of a node
Functions§
- detect_
format - Detect the diagram format from input
- render_
d2_ to_ tui - Render D2 diagram syntax to terminal-displayable text
- render_
diagram - Render diagram with auto-detection of format
- render_
mermaid_ to_ tui - Render mermaid flowchart syntax to terminal-displayable text
- render_
pie_ chart - Render mermaid pie chart to terminal-displayable text
- render_
sequence_ diagram - Render mermaid sequence diagram to terminal-displayable text
- render_
state_ diagram - Render mermaid state diagram to terminal-displayable text
Type Aliases§
- NodeId
- Node identifier type