Skip to content
Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


npm package dependency status build status

creating tables from hierarchic structured data in Markdown documents


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.


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/');

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')


MdQuery is published under the MIT license.


Creates tables from hierarchical structured data in Markdown documents.




No packages published