A full-featured markup language system inspired by Markdown and Showdown. DrewMark defines a set of standardized syntax rules for plain text content, easily parsed into standard HTML.
Markdown is great, but it has limitations. DrewMark rethinks the markup experience from the ground up:
- 9 text decorations instead of just 2 — bold, italic, underline, strikethrough, highlight, superscript, subscript, small text, and ruby annotations
- 5 ordered list types — Arabic numerals, Roman numerals (upper/lower), and Latin letters (upper/lower), with optional reverse ordering
- 3 unordered list types — disc, circle, and square — each with distinct markers
- Built-in table support with
<thead>,<tbody>,<tfoot>, colspan, and rowspan - Native multimedia embedding — audio and video with codec selection, poster images, and playback controls
- Citation support for both inline quotes and blockquotes via the
citeattribute - Global attribute system — add
id,class,style,lang,align,dir,title, anddata-*to any element - Collapsible details blocks with multi-level nesting
- Progress bars, figure blocks, definition lists, style blocks, and more
- No ambiguous syntax — curly braces for URLs, distinct markers for every decoration
# Welcome to DrewMark
This is **bold**, this is %%italic%%, and this is !!highlighted!!.
## Task List
+*+ Implement parser
-*- Write documentation
+*+ Publish to npm
## Table
| Name | Version |
| ======== | ======= |
| DrewMark | v2.3 |
This repository contains the DrewMark language specification only. For implementations, see:
Full language specification: docs/doc.md
中文文档: docs/doc-cn.md
MIT
