36 releases

0.13.1 May 22, 2024
0.13.0 Aug 13, 2023
0.12.0 Mar 9, 2023
0.9.1 Sep 20, 2022
0.4.1 Jul 2, 2019

#103 in Parser implementations

Download history 13015/week @ 2024-12-10 11610/week @ 2024-12-17 4769/week @ 2024-12-24 8209/week @ 2024-12-31 10786/week @ 2025-01-07 13580/week @ 2025-01-14 15404/week @ 2025-01-21 15194/week @ 2025-01-28 16400/week @ 2025-02-04 14084/week @ 2025-02-11 13792/week @ 2025-02-18 13340/week @ 2025-02-25 12401/week @ 2025-03-04 13840/week @ 2025-03-11 14846/week @ 2025-03-18 14568/week @ 2025-03-25

57,220 downloads per month
Used in 110 crates (5 directly)

MIT license

97KB
2.5K SLoC

MIT Latest Version docs Chat on Miaou

A simple, non universal purpose, markdown parser.

If you're looking for a Markdown parser, this one is probably not the one you want:

Minimad can be used on its own but is first designed for the termimad lib, which displays static and dynamic markdown snippets on a terminal without mixing the skin with the code. Minimad sports a line-oriented flat structure (i.e. not a tree) which might not suit your needs.

If you still think you might use Minimad directly (not through Temimad), you may contact me on Miaou for advice.

Usage

[dependencies]
minimad = "0.7"
assert_eq!(
    Line::from("## a header with some **bold**!"),
    Line::new_header(
        2,
        vec![
            Compound::raw_str("a header with some "),
            Compound::raw_str("bold").bold(),
            Compound::raw_str("!"),
        ]
    )
);

assert_eq!(
    Line::from("Hello ~~wolrd~~ **World**. *Code*: `sqrt(π/2)`"),
    Line::new_paragraph(vec![
        Compound::raw_str("Hello "),
        Compound::raw_str("wolrd").strikeout(),
        Compound::raw_str(" "),
        Compound::raw_str("World").bold(),
        Compound::raw_str(". "),
        Compound::raw_str("Code").italic(),
        Compound::raw_str(": "),
        Compound::raw_str("sqrt(π/2)").code(),
    ])
);

Dependencies

~48KB