markdown-to-json-with-content
v0.0.3
Published
Extracts YAML front matter from markdown files to a single JSON string or file.
Downloads
4
Readme
Markdown YAML front-matter to JSON
version: 0.0.1
This is a modified version from Scott Stanfield's Markdown to JSON version.
Modification Note:
Deleted the delete _metadata['content']
method in m2j.js
because
without _metadata['content']
the JSON object only spits out a preview
of the content below the YAML front matter chunk
Credit:
The credit goes to Scott Stanfield for creating this module.
Original Documentation from the original Repo:
m2j.js
is used to read a folder of Markdown files, pulling out the YAML front matter from each, and saving it all as a JSON object.
This is especially useful if you have a folder full of Markdown files that you want scanned and processed into a single JSON file, which can then be consumed by Angular on the client, cached in a Node server, or saved in a nosql database.
In addition to moving the YAML to JSON, a few extra elements are created:
iso8601
formatted fromdate
using Moment.jspreview
is first 70 or so characters of the actual raw markdown content, with ellipses at the endbasename
is the filename without the path or extension
Example
% m2.js --help
Usage: m2j [options] <files>
Options:
-h, --help output usage information
-V, --version output the version number
-w --width <int> max width of preview text [70]
-p --pretty format JSON with newlines
-o --outfile <filename> filename to save json to [output.json]
% m2j.js lottery.ms
lottery.md
---
title: The Lottery Ticket
author: Anton C.
date: "2013-03-15 15:00"
template: article.jade
tags:
- Fiction
- Russian
---
Ivan Dmitritch, a middle-class man who lived with his family on an income of twelve hundred a year and was very well satisfied with his lot, sat down on the sofa after supper and began reading the newspaper.
output
{
"files": [
{
"title": "The Lottery Ticket",
"author": "Anton C.",
"date": "1893-04-01",
"template": "article.jade",
"tags": [
"Fiction",
"Russian"
],
"preview": "Ivan Dmitritch, a middle-class man who lived with his family on an …",
"iso8601Date": "1893-04-01T00:00:00-07:00",
"basename": "lottery.md"
}
]
}