DON'T USE THIS YET! I RECOMMEND WAITING FOR VERSION 1.0.0
Semantic Markdown is a bit like a custom markdown development environment as well as contains a default implementation in javascript. The default implementation of SMD attempts to make easy marking up web pages with good HTML5 and schema, and contains tools for adding styling, so you can run it on a markdown document and immediately sent to a friend or upload it.
The purpose of this project is to:
- Help create custom markdown flavors.
- Translate markdown flavors into each other.
- Make markdown settings an authoring choice, not a developer choice.
- Create a powerful, intuitive default implementation with many "bells and whistles".
- Provide Authoring language suggestions similarly to Grammarly and Readable, but integrated into the development pipeline.
- Make Semantic HTML and Schema markup easy and fun to create.
- Making authoring fun.
- Hackable. Provide parsers and an interface to send rules. Let the software apply those rules.
- Human Readable.
- Low language redundancy. There's Only One Way To Do It
- Input and Output Document should look as close as is possible. For example, a plain text file written in SMD should resemble how a browser renders the output HTML.
- Sticks as close as possible to the original markdown.
The principles here are given in order of preference. The construction of the default syntax is decided as deductively as possible around these principles. Due to the first principle being "hackable", you can essentially re-order the guiding principles according to your own preference. Eventually, a full specification of a markdown ruleset should be able to translate into any other ruleset. 😄 😀
- Base Rules
- headings
- h1-h6: left side atx headings
- h1-h6: two side atx headings
- h1-h6: setext style headings
- ul
- li
- ol
- phrasing
- em
- strong
- sub
- sup
- [/] Code
- inline code
- block code
- testing
- headings
- Meta
- Wrapping with HTML boilerplate
- Including css styles
- Critic
- insert
- delete
- mark
- comment
- Links
- Inline links
- Reference links
- Schema ontology links
- Interpreters
- Mathjs
- Math expression toTex
- Evaluate inline Math
- testing
- inline javascript
- chart.js (charts)
- mermaid.js (uml digrams)
- abcjs (music)
- open street map with leaflet
- Mathjs
- Language and Syntax Tools
- Browser Inline Dictionary lookup
- readeasy suggestions on compilation
- Front Matter
- Include Components
- Forms
- Video
- Audio
These are various flavors of markdown, some or all for which I hope to write rulesets using smd
interpretable yaml specifications.