Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    metamdpublic

    metamd

    Parse meta Markdown data and render in the browser or server. Transform this:

    Optional Heading
    ================
    title: page1.md
    tags: test
     
    The two newlines preceding this paragraph are important.

    into this:

    { title: 'page1.md',
      tags: 'test',
      body: '<h1>Optional Heading</h1><p>The two newlines preceding this paragraph are important.</p>' }

    Installation

    Node

    npm install metamd
    

    Client

    <script type="text/javascript" src="metamd.client.min.js"></script>
    

    Example

    var fs = require('fs');
    var metamd = require('metamd');
     
    var parsed = metamd(fs.readFileSync('./example/page1.md', 'utf-8'));
    console.log(parsed.getData());
    console.log(parsed.getHtml());

    Will result in:

    > { title: 'page1.md',
        tags: 'test',
        body: 'Page 1\n=\n\nThis is a _test_.\n\n```\nThis is another test\n```' }
     
    > <h1>Page 1
      </h1>
      <p>This is a <em>test</em>.
     
      </p>
      <pre><code>This is another test</code></pre>
     

    Usage

    metamd(<markdown>)

    Returns an instance of Metamd.

    Metamd.getData([key])

    Returns an object containing the meta data. If key is provided, just that value will be returned.

    Metamd.getMarkdown()

    Returns the markdown absent of the meta data.

    Metamd.getHtml()

    Returns html rendered using marked.

    NOTE: Meta data keys should be alphanumneric plus underscores. Nothing else will be parsed. Also be careful not to use reserved words or _body as keys.

    Test

    Testing is done with mocha and chai and can be run on the server or client. Remember to install the dev dependencies before running the tests.

    Node

    npm test
    

    Client

    Navigate to test/browser/index.html.

    Compiling

    If you make changes, you need to recompile for browser usage. After you install the dev dependencies, it's easy:

    npm run compile

    Keywords

    none

    install

    npm i metamd

    Downloadsweekly downloads

    2

    version

    0.3.0

    license

    none

    repository

    github.com

    last publish

    collaborators

    • avatar