Migrations

Move your Excalidraw drawing to Modudraft

Load a .excalidraw file. Boxes become components, arrows between them stay arrows, and frames and groups become boundaries.

Export from Excalidraw

In Excalidraw, open the menu and choose Save to… (Save to disk) to get a .excalidraw file.

  • Exports as an image (PNG or SVG) and library files (.excalidrawlib) are not scene files and cannot be loaded.
  • Make sure the arrows are attached to the boxes: drag an arrow's end onto a shape until the shape highlights.

Load it in Modudraft

Open a diagram, then Import in the toolbar, then Open a file…, and choose your .excalidraw file. Files are limited to 5 MB. The extension has to be lower case.

If the diagram already has content on any tab, you are asked "Replace current diagram?" first. The import replaces every tab and can't be undone, so import into a new, empty diagram. Imports aren't possible on a view-only diagram.

What maps to what

  • Rectangles, ellipses and diamonds become components. The name is the text typed inside the shape.
  • The component type is guessed from words in the label, such as database, Redis, Kafka, nginx or S3. A shape without text, or with no such word, becomes a general service.
  • Arrows attached to a shape at both ends become arrows, with their text as the label.
  • Frames become boundaries named after the frame (or "Frame"). Shapes inside a frame become members of it.
  • Groups of two or more shapes that are not in a frame become a boundary around them, named after a loose text element in the group, or "Group 1", "Group 2" and so on. A group inside a frame is flattened into the frame.
  • Positions are kept. If every shape sits at 0,0 they are arranged left to right instead.

What is lost

  • Text that is not inside a shape, lines, free drawing, images and embedded content.
  • Arrows that are not attached to a shape at both ends, and arrows attached to a frame (a boundary cannot be the end of an arrow).
  • Deleted elements, colours, fonts, hand-drawn styling and arrowheads.

After the import

  • Tidy layout. Click Tidy layout in the left palette to arrange everything neatly. The Tidy direction is in the toolbar's Settings menu.
  • Add levels. Group related components into one component and open it to see what is inside. See Levels and C4.
  • Add boundaries. Drag Boundary from the palette around components that belong together, such as a network or a team.

With an agent (MCP)

The MCP server's import_file does not read Excalidraw files. An agent can still build the same diagram: ask it to read your file with read_file and add the components and arrows with bulk_add_nodes and bulk_add_edges. read_file reads files up to 2 MB, while the web app takes 5 MB. Set up the MCP server first.