JSON Canvas Viewer: open .canvas files online

Drop a .canvas file below and the whole board appears in a few seconds: text cards, groups, colors, and the arrows between them. JSON Canvas is the open format behind Obsidian Canvas, and this viewer reads it directly in your browser. Nothing is uploaded, there is no account, and you do not need Obsidian installed.

No file handy? Load a small example board.

SVG is resolution-independent.

🔒 Your files are parsed, rendered and packed into ZIPs in your browser. Nothing is uploaded.

My boardPlan- step one- step twomade with JSON Canvas🔗 https://jsoncanvas.org(external link)render + export, all in yourbrowserspec
The sample board, drawn by the same code that renders your files. The link card is a placeholder because a .canvas file stores only the URL, not the page.

How it works

  1. 1Choose or drop your .canvas file(s).
  2. 2The board is parsed and drawn instantly — in your browser.
  3. 3Export it as a PNG or SVG image. Nothing is uploaded.

What is a JSON Canvas file?

A JSON Canvas file is a plain-text JSON document with two lists. nodes holds every card on the board, each with a position, a size and, optionally, a color. edges holds the connections: which card an arrow starts from, which card it points to, which side of each card it attaches to, and an optional label.

Obsidian created the format for its Canvas feature and released it as an open specification, JSON Canvas 1.0, under the MIT license at jsoncanvas.org. Because it is ordinary JSON, other apps can read and write it, and you can open a file in any text editor. A text editor shows you coordinates, though, not a board. That is the gap this viewer fills.

It is not related to Canva, the design app, or to Canvas GFX. If your file came from either of those, it is a different format and this tool will not open it.

View an Obsidian Canvas without Obsidian

Every board you build with Obsidian’s Canvas feature is saved as a .canvas file in your vault. That file is what people share: attached to an email, committed to a Git repository, dropped into a shared drive or a chat. If you are on the receiving end and do not use Obsidian, or you are on a work computer where you cannot install it, there is no easy way to look at it.

Open it here instead. You do not need the vault, any plugins or an account. The board is drawn with the layout, colors and groups its author set up, so you see the same structure they saw. To keep a copy or pass it on, export it as a PNG image or an SVG file.

One limit to know about: cards that embed a note, an image or a PDF from the vault store only the file’s path. The content stays in the vault and is not inside the .canvas file, so those cards appear as labelled placeholders. Text cards are stored in the file itself, which is why they always show up.

What gets rendered

ElementIn this viewer
Text cardsDrawn with their text. Headings show in bold; bold, italic, code and link markup is shown as plain text; line breaks and list lines are kept.
GroupsDrawn as labelled frames behind the cards they contain.
ColorsObsidian’s six preset colors and custom hex colors, on cards, groups and arrows.
ArrowsDrawn between the sides the file specifies, with arrowheads at one or both ends and their labels.
File cards (notes, images, PDFs)A placeholder showing the file path. The file’s content is not part of the .canvas file.
Link cards (web pages)A placeholder showing the URL. The page itself is not fetched.

Open several boards at once

You can select or drop more than one .canvas file. Each board gets its own preview and its own download buttons, and the files are processed one after another so a large board does not freeze the page. When two or more boards are ready, a single button downloads all of them as PNGs in one ZIP file, built on your device.

If a file is broken, for example a text card is missing its text, the viewer tells you what is wrong instead of guessing. You can choose to open it anyway with empty placeholders; a warning stays on screen, and your original file is never changed.

Private by design

The viewer is a static web page. Your file is read with the browser’s File API, parsed as JSON and drawn on a canvas element, all inside the tab you have open. No file content, file name or board text is sent to a server. The site counts anonymous events, such as how many boards were rendered and how long it took, without cookies and without any of your content.

Export a board as an image

Need a picture of the board rather than the board itself? The JSON Canvas to PNG converter makes a high-resolution image for slides, documents and chat. The JSON Canvas to SVG converter makes a vector file that stays sharp at any size and can be edited in Figma or Inkscape. For background reading, the blog explains what a .canvas file is and how to open an Obsidian Canvas without Obsidian.

FAQ

Can I open a .canvas file without Obsidian?

Yes. Drop it on this page. The file is read and drawn in your browser, so you need neither Obsidian nor the vault it came from.

Is my file uploaded?

No. Parsing and drawing happen on your device. The file’s content and name are never sent anywhere; the site only counts anonymous usage events, such as file size and how long rendering took.

Why are some cards empty boxes?

File cards and link cards only store a path or a URL. The note, image or web page they point to is not inside the .canvas file, so the viewer draws a placeholder labelled with that path or URL.

Does it work with canvases from apps other than Obsidian?

Yes, as long as the app saves the open JSON Canvas 1.0 format. Several apps listed on jsoncanvas.org, such as Kinopio, Flowchart Fun and OrgPad, can export it.

Can I edit the board here?

No. This is a viewer and exporter. To change the board, edit it in Obsidian or another JSON Canvas app, or edit the JSON in a text editor.

Does it work on a phone?

Yes, in current mobile browsers. Very large boards can run into the phone’s memory limit when you export a 2× PNG; choose 1× or SVG in that case.