An Automatic Page Generation Tool http://jxnblk.com/doctor-mark
- Converts markdown to a full templated HTML page
- Includes
marked-example
to convert HTML code blocks to live examples with rendered HTML - Linkable headings
- TOC
- Custom template option using lodash templates
- Custom stylesheets and script tag options
- Uses
package.json
as a data source for:- Page title
- Meta description
- Meta author
- Meta keywords
- Github link
- NPM link
npm install doctor-mark
doctor-mark ./src ./dest
If source and destination folder arguments are omitted, the README.md
and package.json
files in the current folder will be read, and index.html
will be rendered to the same folder.
doctor-mark
Options can be added to package.json
in a doctor-mark
object.
Create a custom build script in your repo, requiring doctor-mark.
// build.js
var fs = require('fs');
var path = require('path');
var doctorMark = require('doctor-mark');
var pkg = require('./package.json');
var readme = fs.readFileSync(path.join(__dirname, './README.md'), 'utf8');
var html = doctorMark(readme, pkg).html();
fs.writeFileSync('./index.html', html);
Optionally add an NPM run script to package.json
"scripts": {
"start": "node build"
}
<h1 class="h2">Hamburger</h1>
<p>This will be converted to a live code example.</p>
Lodash template string – will be converted to a template function.
Array of stylesheets to be inserted into the head element. Defaults to Bassdock CDN.
Array of scripts to be inserted at the end of the body element.
Base URL path for links.
Humanized title for the title element.
Hyphenated name of the module/repo.
Author to be inserted in a meta tag.
Version to be rendered in the footer.
Description to be inserted in a meta tag.
Keywords to be inserted in a meta tag.
Github repo URL to be inserted in the header and footer.
(boolean) Creates an NPM link in the header and footer based on name
.
Defaults to true
.
(boolean)
Removes the first heading and paragraph from the main content area to be used in the header.
Defaults to true
.