About Mermaid Viewer

Who builds this site, and why it exists.

What this is

Mermaid Viewer is a free, browser-based editor for Mermaid diagrams. You write or paste Mermaid text on the left, and the rendered diagram appears on the right as you type.

The rendering happens in your browser. Your diagram is not uploaded, stored, or processed on a server — Mermaid runs as JavaScript on your own machine, and a file you drop in is read locally. That is why this works for diagrams you would not paste into a hosted tool: internal architecture, systems with customer names in the labels, anything covered by an NDA.

One caveat I would rather state than hide: if you enable the share link, the diagram is encoded into the URL itself, and a URL you send to someone else travels over the network. Everything else stays on your machine.

Why it exists

I needed to document software architecture, and I wanted the diagrams to live in the repository next to the code instead of in a separate drawing tool. Mermaid was the obvious format for that. What I did not have was a good way to look at them.

I did not go searching for a tool first. I looked at the problem, decided it was small, and reckoned I could build something clean in a short time. So I did — the first commit on this project is from January 2026.

I built it for myself, and for nothing beyond that. I wanted to open a diagram, see it rendered, zoom into the part I cared about, and send someone a link. Other people found it later, and that changed what I spend time on, but it did not change what the tool is.

How it works

Mermaid does the rendering. This site is everything around it: a live editor with instant preview, zoom and pan for diagrams too large for one screen, three themes, SVG and PNG export, URL-encoded share links, drag-and-drop for .mmd and .mermaid files, and an interface in 18 languages.

It is free to use, and it is paid for by non-intrusive advertising.

Contact

Questions and bug reports go to dominik@malsch.solutions. The operator details are in the imprint.

Written by Dominik Malsch · Last updated:

Back to the viewer