A WYSIWYG markdown editor in your browser
Format with buttons, keep the markdown. Both views, one document.
Runs in your browser0 bytes uploadedFormat with buttons, keep the markdown. Both views, one document.
Runs in your browser0 bytes uploadedempty document
Three ways in, and the first needs nothing: type in the box, paste — a copied web page or document keeps its headings and lists — or open a file. A .txt is fine; Markdown is text. Everything stays in this tab.
Go looking for somewhere to write markdown and almost everything you find is a split screen: notation on one side, rendered output on the other, your eyes travelling between them. That layout is a decision rather than an oversight. The format was designed to be legible in its own notation, and an editor that keeps the notation visible is being faithful to it. The price is that you have to know the notation before the editor is of any use, which leaves out everybody who was handed a.md file and asked to fill it in.
This page takes the other route. Heading levels, bold, italic, bulleted and numbered lists, quotes, links, code and tables have buttons; the text you apply them to changes appearance where it sits; and what comes back out is markdown rather than HTML wearing a markdown label. Few tools are built this way, and the reason is not lack of demand. The most prominent answer online to the question of where to find one is a forum thread asking whether a workable one exists at all.
The difficult problem in an editor like this is not rendering. It is the caret — the blinking insertion point and the selection wrapped around it. Picture the obvious implementation: on every keystroke the document is parsed again and the formatted view is rebuilt from the result. It behaves correctly for exactly one character. Then the rebuilt view has no memory of where you were working, the insertion point jumps to the top of the document, and your next letter lands in the title. A good number of half-finished attempts in this category do precisely that, and it is why people conclude the whole idea does not work.
The rule applied here is that one view is authoritative at a time. Whichever one holds focus owns the document; the other is out of date until you look at it, and the translation between them runs when you change tabs rather than between keypresses. Nothing your insertion point is sitting inside gets rebuilt underneath you, because rebuilding is what loses it. There is a cost and it deserves naming: the formatted view is not tracking you live while you type notation, since live tracking is the exact behavior that breaks a caret. What you get in exchange is an editor where typing feels like typing.
No toolbar covers the whole of markdown, and one that attempted it would be unusable. Footnotes, reference-style link definitions, blocks of literal HTML, a comment meant to stay out of the rendered version — none of these has a button here and none should. They come up rarely enough that giving each one a control would bury the eight things people reach for constantly.
They are typed by hand on the raw tab instead, and the formatted view renders them when you switch back. That is the whole distinction between a toolbar and a ceiling. Nothing in your document sits out of reach because a designer left it off a strip of icons, and adding one footnote does not send you looking for a different program.
Copy styled places the rendered version on your clipboard. That is the one to press when the destination is Word, Google Docs, WordPress or an email — programs that read the formatted representation of a clipboard and give you genuine headings, genuine emphasis and genuine bullets. Send them the notation instead and somebody ends up deleting hash marks and asterisks a line at a time.
Copy raw is the opposite errand: the characters themselves, hashes and asterisks intact, headed for an Obsidian vault, a README, a static site generator, an issue comment or a prompt you are about to hand to a language model.Download writes those same characters to a file on your disk. All three controls stay on screen together, because which one is correct depends entirely on where the text is going and the tool has no business guessing.
Markdown carries a deliberately small vocabulary: structure and emphasis, and very little beyond that. Inside that range it is hard to beat — the file reads fine when nothing is rendering it, differences between two versions are meaningful line by line, and every editor, forum and repository host in the business understands it. Outside that range it has nothing to say. No page size. No typeface, no color, no columns, no merged table cell, no footer.
Which is why this editor sits between two converters rather than standing in for them. Sending a finished document out to a page or a template is the job ofthe Markdown to HTML converter. Bringing something in from a rendered page or an export is HTML to Markdown, which is also the right place to read about what a conversion in that direction has to leave behind. When the material arriving is not markdown at all but prose carrying damage from wherever it was copied, the text cleaner deals with that first.
Typing, rendering and reading a file all happen inside this page. The site has nothing at the far end that would accept a document, so there is no transfer to authorize, no copy sitting on a disk we control, and no entry written anywhere describing what you wrote. A file you open is handed to the browser's own file reader: the original stays where it was, and its contents live in this tab's memory and nowhere else.
The practical form of that promise is easy to test. Cut your machine off the network entirely, then keep working — the buttons, the rendering and the three ways out all carry on as though nothing happened, because none of them ever needed a connection. The other side of the same fact is worth knowing before you rely on it: closing this tab ends the document with it, so download the file when the writing is something you want to keep.
Yes, and that is the point. The two tabs are two views of one document — format a heading with the button and the raw view gains a row of hashes; type the hashes yourself and the styled view updates. Switching tabs never loses anything, because there is nothing to lose track of.
Use the raw tab. Footnotes, reference links, raw HTML blocks and anything else markdown supports can be typed by hand there, and the styled view will render it. No feature is locked away just because it does not have a button.
Yes — that is what Copy styled does. It puts the rendered version on your clipboard as HTML, so an editor that understands formatting receives real headings and lists rather than a page of hash marks. Copy raw does the opposite, for when you want the markdown itself.
No. The editor, the renderer and the file handling all run in this tab. Nothing is sent, nothing is stored on a server, and closing the tab is the only deletion step there is.