David Hurt38 downloadsA fully local Excalidraw editor for portable .excalidraw files.
An intentionally small, local-first Excalidraw editor
for Obsidian that preserves the original's brilliant simplicity. It edits
portable .excalidraw JSON files directly in the vault.

Excalidraw is brilliant because it makes drawing feel immediate. Open a canvas, think with your hands, and get out of the way. Just Simple Excalidraw brings that essential experience to an offline Obsidian vault without turning it into another complex workspace.
The excellent Obsidian Excalidraw plugin by zsviczian offers extensive integrations and a large feature set for people who need them. This plugin has a deliberately different goal: no feature race, no extra workflow layer, and no attempt to reproduce hundreds of options. It is for people who want the original, focused Excalidraw canvas inside Obsidian.
If Excalidraw is an important part of your work, please consider supporting the upstream team with Excalidraw+. This plugin uses the open-source editor locally; Excalidraw+ helps sustain the product and adds online services for users who need them. If you need the advanced features this plugin intentionally leaves out, Excalidraw+ is the better fit—and directly supports the people building Excalidraw.
.excalidraw drawings from the command palette or
the ribbon.It deliberately does not add Markdown embedding, OCR, AI, collaboration, cloud sync, a drawing library, an account, or an export workflow. Those are valuable features in other tools; they are outside this plugin's purpose. The lean build also excludes Mermaid-to-Excalidraw conversion, web embeds, and the related heavy dependency tree.
Community Plugins installs main.js, manifest.json, and styles.css from a
GitHub release. Since Obsidian Sync Standard cannot sync a plugin file larger
than 5 MB, this plugin keeps its release main.js below that limit.
That constraint is intentional: Just Simple Excalidraw ships a focused editor, not every optional Excalidraw subsystem. It includes one embedded Excalifont subset covering Latin characters, including Spanish accents. Other scripts and the optional Excalidraw font variants fall back to fonts available on the local system. No font or code is downloaded at runtime.
To remain small, local, and Sync-friendly, the plugin does not include Mermaid-to-Excalidraw conversion, online collaboration, cloud services, an account, a library, advanced integrations, or the full set of optional fonts. It is intended for focused, offline drawing inside a vault. If those advanced capabilities matter to your workflow, use Excalidraw+: it provides the online service layer and helps fund ongoing Excalidraw development.
Just Simple Excalidraw is local-first by design.
.excalidraw file you open or
create in the vault.localStorage or sessionStorage; the drawing file in your vault is the
source of truth. The bundled upstream Excalidraw runtime contains browser
storage support for its own optional editor state.Once accepted into the Obsidian Community directory, install it from Settings → Community plugins and enable it.
Download main.js, manifest.json, and styles.css from the matching GitHub
release. Put those three files in:
<vault>/.obsidian/plugins/just-simple-excalidraw/
Then enable Just Simple Excalidraw in Obsidian.
Run Create new Excalidraw drawing from the command palette, or use the
pencil ruler icon in the ribbon. The new file is created in the vault root
using a timestamped Drawing YYYY-MM-DD HH.MM.SS.excalidraw name.
Requires Node.js 22.13 or later and npm.
Development note Just Simple Excalidraw was unapologetically vibe-coded: built iteratively with AI assistance, then tested and refined inside a real Obsidian vault.
npm ci
npm run check
npm run check type-checks the plugin, makes a production bundle without
Mermaid, embeds the Latin font subset, installs the built plugin into the local
development vault, and verifies both offline operation and the 5 MB Sync
Standard file limit.
For an editable development build:
npm run dev
Create a Git tag that exactly matches manifest.json's version (for example,
0.1.0). The release workflow builds and attaches exactly main.js,
manifest.json, and styles.css to the GitHub release.
This project is licensed under the MIT License. It bundles Excalidraw, React, and their production dependencies under their respective licenses; see THIRD_PARTY_NOTICES.md.
Excalidraw is an independent open-source project. This plugin is not affiliated with or endorsed by Excalidraw.