/markdown-model

Markdown object model, parser, and renderer

Primary LanguageJavaScriptMIT LicenseMIT

markdown-model

npm GitHub

markdown-model API Documentation

markdown-model is a JavaScript Markdown parsing and rendering library. Underlying its functionality is the Markdown Model, an abstract model of a Markdown document.

To parse a Markdown document and produce a Markdown model, use the parseMarkdown function:

import {parseMarkdown} from 'markdown-model/parser.js';

const markdownModel = parseMarkdown(markdownText);

To render the Markdown model in a web browser, use the markdownElements component function with the renderElements function from the element-model package:

import {markdownElements} from 'markdown-model/elements.js';
import {renderElements} from 'element-model/elementModel.js';

renderElements(document.body, markdownElements(markdownModel));

You can compute the title of a Markdown document from the Markdown model using the getMarkdownTitle function:

import {getMarkdownTitle} from 'markdown-model/markdownModel.js';

const markdownTitle = getMarkdownTitle(markdownModel);

The validateMarkdownModel function is used to validate Markdown models from untrusted sources or for testing the validity of any code that produces a Markdown model:

import {validateMarkdownModel} from 'markdown-model/markdownModel.js';

validateMarkdownModel(markdownModel);

Development

markdown-model is developed using javascript-build and it was started using javascript-template:

template-specialize javascript-template/template/ markdown-model/ -k package markdown-model -k name 'Craig A. Hobbs' -k email 'craigahobbs@gmail.com' -k github 'craigahobbs' -k noapp 1