1.1.0 • Published 10 years ago

serve-markdown v1.1.0

Weekly downloads
134
License
MIT
Repository
github
Last release
10 years ago

serve-markdown

Build Status NPM Version NPM Downloads

A connect middleware, parses markdown files to html.

Install

$ npm i serve-markdown

API

var serveMarkdown = require('serve-markdown')

serveMarkdown(root, options)

Create a new middleware function to serve markdown files from within a given root directory. The file to serve will be determined by combining req.url with the provided root directory. When a file is not found, instead of sending a 404 response, this module will instead call next() to move on to the next middleware, allowing for stacking and fall-backs.

options

Accept below properties in the options object.

template

Optional path to an HTML template. Defaults to a built-in template.

The following tokens are replaced in templates:

  • {{title}} the title of the page
  • {{style}} the specified styleSheet
  • {{content}} html contents compiled from the markdown file
  • {{classes}} the specified classes for the wrapper of the {{content}}
title

{Function | String} Optional, the return-value/value will be used for replacing the title token in the template. Default to the name of the served file.

  • {Function} the return value of the function will be used for replacing the {{title}} token in the template. The function will be called with one argument: name - the name(basename, like demo.md) of the served file.
  • {String} Used as the replacement of the {{title}} token of the template
style

Optional

path to a css stylesheet file Or a stylesheet string. Default to a built-in stylesheet.

classes

Optional

string OR array, which will be used as the class of the wapper div of the {{content}} token. Default to sm-content. The default stylesheet is also written based on this class.

Examples

var connect = require('connect');
var serveMarkdown = require('serve-markdown');

var app = connect();
// serve markdown file
app.use(serveMarkdown('/Users/lizhiye/weekly', {
    title: function (title) {
        // file: /Users/lizhiye/weekly/weekly-report.md
        // title: weekly-report.md
        return title + ' -zhiye'
    },
    classes: 'md mdcontent'
}));

app.listen(8765);
1.1.0

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago

0.2.3

11 years ago

0.2.2

11 years ago

0.2.1

11 years ago

0.2.0

11 years ago

0.1.4

11 years ago

0.1.3

11 years ago

0.1.2

11 years ago

0.1.1

11 years ago

0.1.0

11 years ago