struckdown
struckdown is an experimental markdown/commonmark processing pipeline library inspired by Python's docutils and Sphinx. The idea is to support custom roles and directives for markdown similar to how how reStructuredText works and to provide an abstraction that can be processed by standardized tools without having to be aware of how MarkDown works.
Ideas
A markdown document is parsed into an event stream which can then be modified by event processors including external tools. Because the event stream can be serialized to JSON it's easy to manipulate.
Example
use Pipeline;
use ;
use to_html;
// create a default pipeline
let mut pipeline = default;
// add a processor for anchors and syntax highlighting.
pipeline.add_processor;
pipeline.add_processor;
// parse and process into a final event stream.
let stream = pipeline.process;
// render to html
let html = to_html;