I'm looking for a Markdown editor that satisfies the following conditions:

  1. Supports sequence diagrams (ideally PlantUML).
  2. Has some kind of off-line editor with live preview of the diagrams.
  3. Has the ability to export to HTML programmatically.

This is for documenting a complex protocol.

The closest I've found so far is the excellent Markdown Preview Enhanced plugin for Atom. It supports PlantUML, Graphviz, Katex, automatic TOC generation and so on. It's pretty awesome, but unfortunately there is no way to automatically export to HTML - you have to open each file and export it individually. This means that practically, the only way to preview a git repo of Markdown files is to clone it and open it in Atom. Not ideal.

Another close one I've found is StackEdit. It supports sequence diagrams. It doesn't use PlantUML and the diagram syntax isn't nearly as capable (although the default style is a bit nicer). Also the editor is web-based so I'm not sure how I'd use it as an offline editor easily.

Finally, there is Gitbook. It generates nice HTML from Markdown and there are plenty of PlantUML plugins. There's even a nice offline editor (closed source but I'm not that bothered about that). Unfortunately the offline editor doesn't invoke the plugins, so you don't get a live preview of the sequence diagrams while you are editing them.

Does anyone have any more suggestions?

  • What did you end up using? Also, what's your OS? Oct 8, 2017 at 14:50
  • 1
    I didn't find anything great, and moved jobs so no longer needed it. However VSCode has matured a lot over the last year - might be worth checking out its support for PlantUML and Mermaid. I suspect Mermaid would be easier to generate HTML from.
    – Timmmm
    Oct 9, 2017 at 15:56

1 Answer 1


About the only one that's convincing enough for me to believe is Typora.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.