Creates tables from hierarchical structured data in Markdown documents.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
test
.gitignore
.jsbeautifyrc
.jshintrc
.travis.yml
LICENSE.md
README.md
mdquery.sublime-project
package.json

README.md

MdQuery

npm package dependency status build status

creating tables from hierarchic structured data in Markdown documents

Application

MdQuery allows to generate automatic tables and lists in a Markdown document.

MdQuery extracts a hierarchic datastructure from a Markdown document (with [MdData][mddata]) and replaces data queries in HTML comments by a table or a list, containing the result of the query.

Take a look at the test case for tables and the test case for lists to get an impression, how it works.

Since version 0.2.4, filter and sort-by statements are supported for lists and tables. Take a look at the test case for filtered lists and test case for sorted lists.

MdQuery can be used as a function or as a Gulp transformation.

Interface

MdQuery makes use of GulpText simple to provide the API. Therefore, it currently supports three ways of usage.

  1. Use the readFileSync(path) function, to get the processed content of a Markdown file.
  2. Specify a Markdown string, to get the processed string.
  3. Give no arguments, to get a gulp transformation.

Hint: Please note, the main entry in the API of MdQuery is the transform attribute of the module.

Transform a file directly

Use the function readFileSync(path) and specify a path to the Markdown file.

var mdquery = require('mdquery').transform;
var result = mdquery.readFileSync('project_a/docs/index.md');

Transform a string

Give a string to process as Markdown text.

var mdquery = require('mdquery').transform;
var result = mdquery('# Introduction ...');

Create a Gulp transformation

Call without arguments to create a Gulp transformation.

var mdquery = require('mdquery').transform;
var gulp = require('gulp');

gulp.task('preprocess-markdown', function() {
    return gulp.src('docs/*.md')
        .pipe(mdquery())
        .pipe(gulp.dest('out'));
});

License

MdQuery is published under the MIT license.