#ssg #markdown #md #web

mdxt

Custom Markdown Engine for my personal blog

44 releases

0.7.3 Sep 10, 2023
0.7.1 Jun 20, 2023
0.5.18 Mar 7, 2023
0.5.11 Dec 29, 2022
0.4.10 Jul 31, 2022

#772 in Text processing

MIT license

1MB
12K SLoC

MDxt

MarkdDown eXTended

MDxt is an extended markdown format. Though not a strict superset of gfm, MDxt supports most of its features. You can read more about it here

Many features of MDxt require proper style sheets and script files. I highly recommend you use MDxt with a dedicated web framework.

If you wanna know more about MDxt, see these articles.

GFM compatibility

GFM is a Github-flavored markdown format, which is one of the most widely used markdown extension.

MDxt can read most gfm documents, but the output is different. (ex: unlike gfm, code spans are rendered to <code class="short">.) It doesn't support some of gfm's syntaxes. (ex: indented code blocks, setext headings, and a few more)

I won't make any compatibility layers for gfm (ex: GFM <-> MDxt converter). Because some elements are impossible to convert to GFM formats. They require <script> tags in their output HTML, which are not supported in GFM and most other markdown extensions.

Frontend Framework

If you want a fully-featured frontend framework with MDxt, try this project.

TODO: remove ./styles

Contributing

Why Vec<u32>

It's the only way to index strings (String doesn't support indexing) and use emojis (most emojis are greater than u16::MAX)

Dependencies

~2.2–9.5MB
~83K SLoC