MarkBind

Generate websites from Markdown text. Optimized for creating text-heavy websites e.g., eLearning websites, online instruction manuals, project documentation etc.

Get Started


Simple syntax. Dynamic content.

MarkBind source files can be as simple as basic Markdown, but you can also use a mix of several popular syntax schemes ( , BootStrap, NunJucks, etc. as well as MarkBind's own custom syntax) to create more dynamic content that you cannot normally get from a typical markdown-to-html site generator.

Here are some simple text-formatting examples:

Syntax scheme Code Output
Markdown **bold text** _italic text_ bold text italic text
GFMD ~~striked out text~~ striked out text
MarkBind extensions to Markdown ==highlighted text==
%%grey text%%
!!underlined text!!
highlighted text
grey text
underlined text

More examples of generating static content


The example paragraph below has the following dynamic elements: a tooltip, a popover, and a modal. Hover/click on the underlined words to see each.

In , a binary tree is a tree data structure in which each node has at most two children, which are referred to as the left child and the right child. Primitive data types on the other hand ...

More examples of generating dynamic content



Everything you need for text-heavy websites, built-in.

MarkBind is highly optimized for creating text-heavy websites e.g., eLearning websites, online instruction manuals, project documentation etc. Anything that you might need for creating such websites are built-in, sparing you the hassle of finding/installing/searching plugins that you need.

Here are some examples:

Icons can improve the readability of a text-heavy document. MarkBind comes with a wide selection of icons and emoji.
With MarkBind's search feature, you can allow readers to search for keywords in your site.
MarkBind allows you to add site/page navigation menus, headers, footers easily.


More control to the reader, without duplicating code.

A MarkBind website can be a buffet of content, as opposed to a set menu: a site can have optional contents that the reader can access at her discretion, and the same content can be organized in multiple ways so that the reader can choose the one that fits the need. To cater (pun intended) for creating such buffet style websites, MarkBind has reuse mechanisms for presenting the same content in multiple ways without duplicating the source file.

For example, MarkBind has a powerful include mechanism that allows content fragments (i.e., a file or part of a file) to be reused at multiple places in the website. In the example below, both the modal and the expandable panel reuse the same content originating from a single source file.

In CS, a binary tree is a tree data structure in which each node has at most two children, which are referred to as the left child and the right child. Primitive data types on the other hand ...

Some example primitive data types



Easy to set up, modify, deploy, integrate.

Installing MarkBind takes just one command. Creating a new MarkBind site too takes just one command. With MarkBind's live preview feature, you can see how your site will look like as you modify the source file. Deploying the site to a server can be as simple as one command too.

As MarkBind is also optimized for project documentation, it can easily integrate with the workflow of a software project.

Get Started

Developer Guide

If you are a user, please visit MarkBind.org instead.

This is the latest Developer Guide for MarkBind.

For contributors: please access the Developer Guide here