Plan
Where markz is and what comes next. Finished work gets a line or two. The detail lives in the
release notes, the code's @prose, the tests and lessons.
Where it is
markz parses its dialect to a flat tree and renders it to HTML, with a warning for every input
that doesn't do what it looks like. The latest release is 0.4.1, on npm as @amitkaps/markz,
and its docs are at markz.amitkaps.com.
0.4.1
- Metadata lists that wrap. A list can continue on indented lines after its key, as oxfmt writes a long one, and may end with a comma.
0.4.0
- No footguns. Every input does what it looks like, or gets a warning that says what to write. Smart punctuation went, metadata keys are flat, and a metadata value is kept as written (syntax).
0.3.0
- TypeScript 7, and a smaller package. It ships without comments, and every export is documented (reference).
- The docs as the site. The README is the home page, the docs are read in place, and the site deploys from Cloudflare's Git build.
- More warnings. Unclosed blocks, and an element closed by the wrong name.
0.2.0
headings(doc), and the usage and reference pages. The site is built with prose, fromdocs/.
0.1.0
- The dialect, and the parser. A flat tree, block and inline passes, warning codes, and the grammar. Each construct is tested against the suites it borrows from, like micromark's, GFM's and the yaml-test-suite (quality).
Next, in order
Nothing is queued. The ideas below wait for a use that needs them.
Later
- djot's inline raw,
{=format}. It stays literal text with no warning. Raw blocks are the least used construct so far, so a warning for the inline form waits until they are used more. - Items. A pending text string, or writing nodes during the scan, remain open, though merging items showed no gain.
- Streaming. Healing an unfinished document at one point, without changing
parse(design). - The Quality page. Robustness, the real-document corpus, formatter agreement and HTML safety could join conformance, size and speed.
Open questions
- Streaming's shape. Whether healing belongs in markz, or in what renders a stream.