Remark is a library for taking (X)HTML input and outputting clean Markdown, Markdown Extra, or MultiMarkdown compatible text. The purpose of this conversion is mainly to allow for the use of client-side HTML GUI editors while retaining safe, mobile-device editable markdown text behind the scenes. It is recommended that the markdown text is stored, to reduce XSS attacks by code injection.

Example Usage Scenario

Advanced Features

Remark can be configured to output extra functionality beyond straight markdown.

The basic theory is that you match the extensions to your Markdown conversion library.


Remark depends on jsoup and Apache Commons Lang 3. If you want to use it from the command line, it also depends on Apache Commons CLI. Alternatively, you can download the standalone version of the Jar, which contains all the dependencies.

During testing, Remark also depends on some additional libraries, which are automatically downloaded by the gradle build script.