# markdown-it.rs
**Repository Path**: mirrors_rlidwka/markdown-it.rs
## Basic Information
- **Project Name**: markdown-it.rs
- **Description**: markdown-it js library rewritten in rust
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 1
- **Created**: 2022-06-16
- **Last Updated**: 2026-03-22
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# markdown-it
[](https://markdown-it-rust.github.io/markdown-it/)
[
](https://github.com/markdown-it-rust/markdown-it)
[
](https://docs.rs/markdown-it)
[
](https://crates.io/crates/markdown-it)
[
](https://app.codecov.io/gh/markdown-it-rust/markdown-it)
Rust port of popular [markdown-it.js](https://github.com/markdown-it/markdown-it) library.
TL;DR:
- if you want to get result *fast*, use [pulldown-cmark](https://github.com/raphlinus/pulldown-cmark)
- if you want to render GFM exactly like github, use [comrak](https://github.com/kivikakk/comrak)
- if you want to define your own syntax (like `@mentions`, `:emoji:`, custom html classes), use this library
You can check a [demo](https://markdown-it-rust.github.io/markdown-it/) in your browser *(it's Rust compiled into WASM)*.
### Features
- 100% CommonMark compatibility
- AST
- Source maps (full support, not just on block tags like cmark)
- Ability to write your own syntax of arbitrary complexity
- to prove this point, CommonMark syntax itself is written as a plugin
### Usage
```rust
let parser = &mut markdown_it::MarkdownIt::new();
markdown_it::plugins::cmark::add(parser);
markdown_it::plugins::extra::add(parser);
let ast = parser.parse("Hello **world**!");
let html = ast.render();
print!("{html}");
// prints "
Hello world!
" ``` For a guide on how to extend it, see `examples` folder. ### Notes *This is an attempt at making a language-agnostic parser. You can probably parse AsciiDoc, reStructuredText or [any other](https://github.com/mundimark/awesome-markdown-alternatives) plain text format with this without too much effort. I might eventually write these as proof-of-concept.*