![json2md](http://i.imgur.com/uj64JFw.png)
json2md ![Support this project](http://i.imgur.com/6cMbHOC.png)
A JSON to Markdown converter.
If you're looking to use this on the client side, that's also possible. Check out the dist
directory.
Installation
$ npm i --save json2md
Example
var json2md = require("json2md");
console.log(json2md([
{ h1: "JSON To Markdown" }
, { blockquote: "A JSON to Markdown converter." }
, { img: [
{ title: "Some image", source: "https://example.com/some-image.png" }
, { title: "Another image", source: "https://example.com/some-image1.png" }
, { title: "Yet another image", source: "https://example.com/some-image2.png" }
]
}
, { h2: "Features" }
, { ul: [
"Easy to use"
, "You can programatically generate Markdown content"
, "..."
]
}
, { h2: "How to contribute" }
, { ol: [
"Fork the project"
, "Create your branch"
, "Raise a pull request"
]
}
, { h2: "Code blocks" }
, { p: "Below you can see a code block example." }
, { "code": {
language: "js"
, content: [
"function sum (a, b) {"
, " return a + b;"
, "}"
, "sum(1, 2);"
]
}
}
]));
Documentation
json2md(data, prefix)
Converts a JSON input to markdown.
Supported elements
Type | Element | Data | Example |
---|
h1 | Heading 1 | The heading text as string. | { h1: "heading 1" } |
h2 | Heading 2 | The heading text as string. | { h2: "heading 2" } |
h3 | Heading 3 | The heading text as string. | { h3: "heading 3" } |
h4 | Heading 4 | The heading text as string. | { h4: "heading 4" } |
h5 | Heading 5 | The heading text as string. | { h5: "heading 5" } |
h6 | Heading 6 | The heading text as string. | { h6: "heading 6" } |
p | Paragraphs | The paragraph text as string or array (multiple paragraphs). | { p: "Hello World"} or multiple paragraphs: { p: ["Hello", "World"] } |
blockquote | Blockquote | The blockquote as string or array (multiple blockquotes) | { blockquote: "Hello World"} or multiple blockquotes: { blockquote: ["Hello", "World"] } |
img | Image | An object or an array of objects containing the title and source fields. | { img: { title: "My image title", source: "http://example.com/image.png" } } |
ul | Unordered list | An array of strings representing the items. | { ul: ["item 1", "item 2"] } |
ol | Ordered list | An array of strings representing the items. | { ol: ["item 1", "item 2"] } |
code | Code block element | An object containing the language (String ) and content (Array or String ) fields. | `{ code: { "language": "html", "content": "" } } |
You can extend the json2md.converters
object to support your custom types.
json2md.converters.sayHello = function (input, json2md) {
return "Hello " + input + "!";
};
Then you can use it:
json2md({ sayHello: "World" });
Params
- Array|Object|String
data
: The input JSON data. - String
prefix
: A snippet to add before each line.
Return
- String The generated markdown result.
How to contribute
Have an idea? Found a bug? See how to contribute.
Where is this library used?
If you are using this library in one of your projects, add it in this list. :sparkles:
I am using this library to generate documentation for my projects, being integrated with blah.
License
MIT © Ionică Bizău