Crate osd_core

Crate osd_core 

Source
Expand description

osd-core: OpenSequenceDiagrams core library - A sequence diagram parser and SVG renderer

§Example

use osd_core::{parse, render};

let input = r#"
title Example
Alice->Bob: Hello
Bob-->Alice: Hi there
"#;

let diagram = parse(input).unwrap();
let svg = render(&diagram);
println!("{}", svg);

§Themed rendering

use osd_core::{parse, render_with_config, Config, Theme};

let input = "Alice->Bob: Hello";
let diagram = parse(input).unwrap();
let config = Config::default().with_theme(Theme::modern_blue());
let svg = render_with_config(&diagram, config);

Re-exports§

pub use parser::parse;
pub use parser::ParseError;
pub use renderer::render;
pub use renderer::render_with_config;
pub use renderer::Config;
pub use theme::LifelineStyle;
pub use theme::ParticipantShape;
pub use theme::Theme;
pub use ast::*;

Modules§

ast
AST definitions for sequence diagrams
parser
Parser for WebSequenceDiagrams-compatible sequence diagram syntax
renderer
SVG renderer for sequence diagrams
theme
Theme definitions for sequence diagrams