Crates.io | json2markdown |
lib.rs | json2markdown |
version | 0.2.1 |
source | src |
created_at | 2025-01-20 17:04:26.628096 |
updated_at | 2025-02-07 21:01:58.209811 |
description | A Rust library to convert JSON data into well-structured Markdown format. |
homepage | https://github.com/abdullah-albanna/json2markdown |
repository | https://github.com/abdullah-albanna/json2markdown |
max_upload_size | |
id | 1524061 |
size | 30,249 |
A powerful and flexible Rust library for converting complex JSON structures into beautifully formatted Markdown documents. This library provides a highly customizable renderer that can transform nested JSON objects into clean, hierarchical markdown.
Add the following to your Cargo.toml
:
[dependencies]
json2markdown = "0.2.1"
# use the ``preserve_order`` feature if the ordering is needed
serde_json = "1"
use serde_json::Value;
use json2markdown::MarkdownRenderer;
fn main() {
let json = serde_json::from_str(r#"{"title": "My Project"}"#).unwrap();
let renderer = MarkdownRenderer::default();
let markdown = renderer.render(&json);
println!("{markdown}");
}
You can customize indentation by adjusting the parameters:
// 1 space base indentation, 2 spaces for the depth
let renderer = MarkdownRenderer::new(1, 2);
let complex_json = serde_json::json!({
"project": {
"name": "Advanced Project",
"goals": [
"Improve efficiency",
"Reduce manual work"
],
"team": {
"size": 5,
"roles": ["Developer", "Designer"]
}
}
});
let renderer = MarkdownRenderer::default();
let markdown = renderer.render(&complex_json);
MIT