[][src]Crate markdown_composer

markdown-composer helps you to create Markdown documents using Rust code.

The main API involves around using builders to create structured Markdown elements that can be combined together into a Markdown document

use markdown_composer::{Link, Markdown};

let link = Link::builder()
    .text("Hello World")
    .url("https://hello.world")
    .build();

let md = Markdown::new()
    .header1("First level header")
    .paragraph("Some standalone paragraph")
    .link(link)
    .paragraph("Some other paragraph");
let rendered = md.render();

Re-exports

pub use crate::builders::image::ImageBuilder;
pub use crate::builders::link::LinkBuilder;
pub use crate::builders::list::ListBuilder;
pub use crate::traits::AsFooter;
pub use crate::traits::MarkdownElement;
pub use crate::transforms::BlockQuote;
pub use crate::transforms::Bold;
pub use crate::transforms::CodeBlock;
pub use crate::transforms::Inline;
pub use crate::transforms::Italic;
pub use crate::types::header::Header;
pub use crate::types::header::HeaderLevel;
pub use crate::types::image::Image;
pub use crate::types::link::Link;
pub use crate::types::list::List;
pub use crate::types::list::ListItem;
pub use crate::types::list::ListItemMarker;
pub use crate::types::list::ListType;
pub use crate::types::list::NumberedListItemMarkerSeparator;
pub use crate::types::markdown::Markdown;
pub use crate::types::paragraph::Paragraph;
pub use crate::extensions::github::CheckmarkItem;
pub use crate::extensions::github::Strikethrough;

Modules

builders

Contains builders for all Markdown content types.

extensions

This provide provides certain markdown feature extensions to the crate that can be enabled through crate features.

traits

Contains Markdown trait definitions.

transforms

Contains extension traits that can used to transform text elements into special markdown formats.

types

This module defines all Markdown types that are specified inside the CommonMark specification.