Skip to content

Instantly share code, notes, and snippets.

@NonPolynomial
Created August 10, 2019 11:49
Show Gist options
  • Select an option

  • Save NonPolynomial/453c4bd942da1c7dcd4be318cdfeed67 to your computer and use it in GitHub Desktop.

Select an option

Save NonPolynomial/453c4bd942da1c7dcd4be318cdfeed67 to your computer and use it in GitHub Desktop.
CommonJS Markdown Extension Helper

CommonJS Markdown Extension Helper

extension helper for commonjs projects to require markdown files

title some information
some title
important

Headline

const fs = require('fs');
const util = require('util');
const fm = require('front-matter');
const sd = require('showdown');
require.extensions['.md'] = (module, filename) => {
const fileContents = fs.readFileSync(filename, 'utf8');
const result = fm(fileContents);
const sdConverter = new sd.Converter();
result.html = sdConverter.makeHtml(result.body);
Reflect.deleteProperty(result, 'frontmatter');
module.exports = result;
};
require('./extensions-helper');
const example = require('./example.md');
console.dir(example);
{
"name": "cjs-md-extension",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"start": "node ."
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"front-matter": "^3.0.2",
"showdown": "^1.9.0"
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment