Home

Kramdown

Kramdown is a fast, pure Ruby Markdown parser and converter. It provides a Markdown syntax that is a superset of common Markdown features and also offers compatibility modes for GitHub Flavored Markdown (GFM). The project is designed to be fast and extensible for Ruby applications and is widely used, notably as the default Markdown processor in the Jekyll static site generator.

Kramdown supports a broad range of features commonly used in Markdown documents, including tables, fenced code

Internally, kramdown parses input into a document tree and renders output through a configurable writer system.

In Ruby projects, kramdown is used by invoking the Kramdown::Document with the markdown text and converting

Kramdown is released under the MIT License and is available as a Ruby gem.

blocks,
footnotes,
and
definition
lists.
It
also
provides
block
and
inline
attributes
that
let
authors
assign
IDs,
classes,
and
other
metadata
to
elements.
In
addition,
it
offers
built-in
support
for
math
notation
with
engines
such
as
MathJax,
KaTeX,
or
MathML,
and
supports
GitHub
Flavored
Markdown
mode
for
compatibility
with
non-kramdown
syntax.
It
can
produce
HTML
by
default,
and
can
also
output
XHTML,
LaTeX,
or
other
formats
depending
on
the
selected
writer
and
options.
it
to_html
or
to
other
formats;
in
Jekyll,
it
functions
as
the
default
Markdown
processor.