metalsmith-to-json

1.0.2 • Public • Published

Metalsmith to JSON

Introduction

Metalsmith to json converts your markdown files to json so you can use them as a static api. Additionally if required it can create a collection of all the files to consume.

Requirements

Metalsmith to json requires the metalsmith markdown plugin.

Installation

npm install metalsmith-to-json

Usage

var Metalsmith  = require('metalsmith'),
    markdown = require('metalsmith-markdown'),
    tojson = require('metalsmith-to-json');

Metalsmith(__dirname)
    .use( markdown() )
    .use( tojson({
        outputPath : '',
        createIndexes : true,
        indexPaths : ['articles', 'pages'],
        onlyOutputIndex : true
    })
    .build(function( err, files ) {
        if( err ) throw err;
    });

Output

Metalsmith to json will output files with a .json extension and the same filename as the source file. All frontmatter will be represented in the json object.

When using the indexes option an index file will be created with the same name as the folder of files it's indexing and saved in the top level output directory.

Options

Metalsmith to json takes four options.

  1. outputPath (string) : A string representing the path you'd like the json files to be output to.
  2. createIndexes (boolean) : A boolean to tell metalsmith to json whether or not you'd like to generate indexes.
  3. indexPaths (array) : An array of paths for metalsmith to json to generate indexes from.
  4. onlyOutputIndex (boolean) : A boolean to tell metalsmith to only output the index file for each specified indexPath.
  5. stripHTML (boolean) : A boolean to tell metalsmith-to-json to strip html tags
  6. stripHTMLOptions (object) : Options from html-to-text - defaults:
{
    tables: true,
    baseElement: 'body',
    ignoreImage: true,
    ignoreHref: true
}

Dependencies (3)

Dev Dependencies (0)

    Package Sidebar

    Install

    npm i metalsmith-to-json

    Weekly Downloads

    101

    Version

    1.0.2

    License

    ISC

    Unpacked Size

    5.35 kB

    Total Files

    3

    Last publish

    Collaborators

    • hellotoby