What features would an excalidraw plug need?

Currently working on an excalidraw plug and I got the very very basic stuff working and I’m now contemplating, which features the plug actually needs. I’ve looked at the obisidan excalidraw plugin, which is very feature rich and has some interesting stuff (, but the codebase is a mess). Going from there, but definitely planning on making it simpler, I think these would be the main features for a first version:

  • Library support with a single library for the whole space
  • Links inside of text elements, with formatting, aliasing and support for updating
  • Embed Files/Documents from your space like images into excalidraw
  • Space Lua alternative to ea scripts, if this is possible, as I don’t know what the options are for interfacing with Space Lua using syscalls (Maybe @zef can answer this). Primarily, what I would want here is to be able to define something very similar to an event listener in space lua, which I can then call using syscalls in js.

Some features I think aren’t too important:

  • Transclusions of e.g. pages
  • Drag & Drop support
  • Storing the excalidraw file as markdown. This is an interesting one: Currently I just store it the way excalidraw intends, the obisidian plug does it differently, it uses a “user readable” markdown format. I don’t really see this as super useful.
  • Latex Support

Some features I’m unsure about:

  • Indexing? What should we index, what would be useful?
  • Allow more extensive Markdown features inside of text elements?

I’d be interest in what interesting feature ideas you can come up with, what you consider important, etc.

EDIT: I’m probably going to release a version (hopefully in the next few days), which only does saving/editing stuff and doesn’t nuke your files.

3 Likes

Personally I’d be ecstatic with:

  • editing
  • Linking to pages in SB or other URLs
  • Embedding a preview of an excalidraw diagram inside a page without needing to export it manually. Ideally when clicking on it you go to edit view
  • Maybe a read only view for bigger diagrams?

How would a excalidraw section in silverbullet look like? Is it going to be rendered differently from the normal markdown pages? or it should just be a separate page?

I’ve already been unsatisfied with the search text functionality in Silverbullet and I always switch to neovim or obsidian for the text search. I would assume indexing the excalidraw would be useful but currently not much used.

I use both Obsidian and SilverBullet with same ~vault~ space, I prefer SilverBullet but need Obsidian for some reason. I hope the file can be used in both applications(not necessarily both able to edit).

1 Like