node package manager



$ npm install -g mdtoc

mdtoc.js is a little Markdown filter that scans your document for headings, numbers them, adds anchors, and inserts a table of contents. It is a JavaScript port of Sam Stephenson's mdtoc.rb.

To use mdtoc, make sure that the headings you want numbered and linked are in this format:

### Title ###

Note that the headings must have an equal number of octothorpes around the title text (in Markdown, # means h1, ## means h2, and so on). The table of contents will be inserted before the first such heading.

lib/mdtoc.js exposes the mdtoc function, which accepts a string of Markdown source text as its only argument. It is compatible with web browsers, JavaScript engines, and CommonJS environments. The bin/mdtoc executable is Node-specific, and can be invoked like so:

$ mdtoc
$ mdtoc | markdown
$ cat | mdtoc
$ cat | mdtoc | markdown