Markdown
Write Markdown with a live preview and take away clean HTML.
CHANCE//OS notes
A local Markdown renderer — nothing leaves the tab. Try editing anything on the left and watch the right-hand side keep up.
Inline
Emphasis works the way CommonMark says it should: italic, bold,
both, struck through, and code spans with a literal ` inside.
Word-internal abc italicises, but snake_case_words are left alone.
Links: the site, an autolink https://example.com/path?q=1, a bare one https://example.org/docs, and mail to hello@example.com. Escapes work too: *not emphasis*. Two spaces at the end of a line force a hard break.
Lists
- Ordered, starting at one
- Second item
- nested and tight
- with
codeinside
- Third
loose items get wrapped in paragraphs
because a blank line separates them
Quote and code
Nested quotes work.
Two levels deep, with a list:
- one
- two
// fenced, with a language tag
export const greet = (name: string) => `hi ${name}`;
indented code is a block too
Table
| Feature | Status | Notes |
|---|---|---|
| Tables | yes | alignment honoured |
| Raw HTML | escaped | on purpose |
javascript: URLs | refused | see below |
Setext heading
That was an = underline, and the rule above was a thematic break.
Blocks are parsed first, then inlines — so emphasis follows the CommonMark flanking rules and a*b*c italicises while snake_case_words do not. ATX and setext headings, fenced and indented code, nested blockquotes, tight and loose lists, GFM tables and strikethrough all work. Every character of your text is escaped on the way out and raw HTML is escaped rather than passed through, so a <script> in the source can never become one in the preview; javascript:, data: and vbscript: URLs are refused even when hidden behind character references. Nothing is uploaded — the parser runs in this tab.
Every renderer differs slightly, so the useful thing is seeing your text rendered and being able to take the resulting HTML somewhere else without a wrapper of framework markup.
The preview updates as you type and the HTML output is plain and unstyled — usable in an email, a CMS field or a template. Tables, code blocks and task lists are supported, and it all runs locally.
What people open it for
- Drafting a README and checking the rendering
- Turning Markdown into HTML for a CMS or email
- Previewing a comment or issue before posting it
In the terminal
tools markdown
Every utility is also a command in the desktop's shell.