PlantUML WYSIWYG Editor: Can You Drag and Drop Diagrams?

··Updated ·8 min read
plantumlplantuml-wysiwyg-editordrag-and-dropdiagram-editor

PlantUML itself is a text-to-diagram language, not a free-position drawing canvas. A particular editor may add live preview, forms, snippets, or drag-and-drop interaction, but those are editor features rather than guarantees of the PlantUML format.

This distinction matters when you evaluate a “PlantUML WYSIWYG editor.” Decide whether you need live rendering, direct node movement, bidirectional source synchronization, or only a faster way to insert syntax. For examples to test in candidate editors, use the PlantUML examples guide.

OnUML exposes this boundary directly in its diagram editor: PlantUML mode is a text-driven workflow that generates and previews the diagram from source, so it does not let you drag PlantUML elements around the rendered canvas. If direct manipulation is the requirement, switch to draw.io mode, where you can add, move, and drag diagram shapes on the canvas.

Key Takeaways

  • PlantUML source describes elements and relationships; the renderer calculates layout.
  • “WYSIWYG” can mean live preview, property panels, or a true draggable canvas—ask which one.
  • Dragging an element is useful only if the editor can preserve or regenerate understandable PlantUML source.
  • Text-first editing is strong for source review and repeatable changes; visual editing is strong for discovery and spatial adjustment.
  • OnUML does not convert PlantUML source into draw.io XML or convert draw.io edits back into PlantUML.

Last updated: July 29, 2026. Editor capabilities change, so verify product-specific claims in the current product.

Understanding PlantUML Editors

Is PlantUML a WYSIWYG format?

No. PlantUML's official model is to generate diagrams from simple, readable text. The PlantUML homepage and getting-started guide introduce source bounded by @startuml and @enduml, not a coordinate-based canvas format.

An editor can still present that format through a WYSIWYG-like interface. The label describes the editing experience, not the underlying language.

Can you drag and drop PlantUML diagram elements?

Not as a language-level operation. PlantUML does not store “move this box to x=420, y=180” as its normal modeling primitive. A third-party editor may translate dragging into relationship direction, hidden constraints, ordering, or regenerated source.

Some third-party tools claim a bidirectional PlantUML round trip, but that is not how OnUML's two modes work. In OnUML:

  1. PlantUML mode accepts PlantUML text and renders a preview.
  2. draw.io mode uses draw.io's own XML-based diagram format and provides direct canvas editing.
  3. Switching modes does not convert the current PlantUML source into draggable draw.io shapes.
  4. Editing in draw.io does not regenerate PlantUML source.

Choose the mode that matches the artifact you need instead of expecting a round trip between them.

What does live preview provide?

Live preview renders source as you type, usually in a pane beside the editor. It shortens feedback loops but does not make the preview directly editable.

@startuml
actor User
participant Browser
participant API

User -> Browser: Submit form
Browser -> API: POST /orders
API --> Browser: 201 Created
Browser --> User: Show confirmation
@enduml

Paste this example into an editor, change the participant order, and watch the preview. This test distinguishes responsive rendering from true canvas editing.

Are the official web editor and third-party integrations identical?

No. PlantUML provides an official web editor and documents many running environments and integrations. Each front end can implement different storage, preview, export, collaboration, and navigation behavior.

Do not infer that a feature available in one integration exists in all others.

Choosing the Right Editing Model

When is a text-first PlantUML editor the best choice?

A text-first editor is best when the diagram structure must remain readable and repeatable. Source aliases, includes, macros, and consistent rendering are easier to manage explicitly.

Ideal for:

  • Developers maintaining text-first diagrams
  • Documentation teams using automated builds
  • Architects reusing themes and standard-library macros

Not ideal for:

  • Workshops where participants need unconstrained sketching
  • Pixel-specific presentation layouts
  • Users who cannot inspect or maintain generated source

Once the source is ready, follow the PlantUML export guide for PNG/SVG downloads and OnUML project saving.

When is a visual editor the better choice?

A visual editor is better for fast spatial exploration, freeform whiteboarding, and users who think by directly manipulating shapes. If PlantUML export is required, verify that export produces clean, editable source rather than a flattened image.

NeedText-first editorVisual canvasHybrid editor
Reviewable source changesStrongUsually weakDepends on generated source
Direct node movementLimitedStrongProduct-specific
Reusable macrosStrongLimitedProduct-specific
Pixel-level controlWeakStrongModerate
Cross-tool PlantUML portabilityStrongNot applicableMust be tested

What should “bidirectional editing” mean?

Bidirectional editing should mean that source changes update the canvas and visual changes update valid, understandable source. Anything less is a preview-plus-toolbar workflow, which can still be useful but should be described accurately.

Test aliases, notes, groups, themes, and includes—not just two boxes and one arrow.

Common Workflow Questions

Can I use existing PlantUML source in a visual editor?

In OnUML, paste the source into PlantUML mode to edit it as text and render a preview. The current draw.io mode does not convert PlantUML source into draggable shapes.

Can I export a dragged diagram back to PlantUML?

Not from OnUML's draw.io mode. Draw.io diagrams use their own XML-based source and can be saved as OnUML project content or exported as PNG or SVG. They are not converted into PlantUML text.

Why does PlantUML rearrange elements after I edit the source?

PlantUML uses automatic layout, so relationship changes and renderer versions can alter placement. Direction, containers, and layout hints can influence the result, but they are not a general pixel-positioning system. See the PlantUML layout guide for controlled techniques.

Does drag and drop make a diagram more correct?

No. Dragging may improve readability, but it does not validate UML semantics, API behavior, database constraints, or architecture boundaries. Review the model separately from the layout.

How should teams evaluate a PlantUML editor?

Use a representative project scenario and score these capabilities:

  1. Source compatibility with your pinned PlantUML version
  2. Clear source changes after visual edits
  3. Support for includes, themes, and aliases
  4. Export to required formats
  5. Keyboard accessibility and collaboration
  6. Offline and data-handling requirements

Is a PlantUML online editor the same as a WYSIWYG editor?

No. “Online” specifies where the editor runs; “WYSIWYG” describes how directly the editing surface resembles the output. A browser editor can remain entirely text-first.

Can I use drag and drop only for layout?

Not in OnUML's PlantUML mode. Use draw.io mode when direct layout manipulation is required, but keep in mind that the result remains a draw.io diagram rather than updated PlantUML source.

What if I need both whiteboarding and maintained documentation?

Use a two-stage workflow: sketch collaboratively on a canvas, then translate the agreed model into PlantUML. Keep the PlantUML source authoritative after the design stabilizes. This avoids forcing exploratory coordinates into a maintainable text model.

A Practical Evaluation Example

Use this class diagram to test whether a candidate editor preserves meaningful relationships:

@startuml
interface PaymentGateway
class CheckoutService
class StripeGateway
class Order

PaymentGateway <|.. StripeGateway
CheckoutService --> PaymentGateway : charges through
CheckoutService --> Order : completes
@enduml

In a tool that claims bidirectional PlantUML editing, drag StripeGateway, add a note, rename the alias, and inspect the resulting source. In OnUML, use PlantUML mode for text-driven generation and preview; use draw.io mode when direct shape movement is the requirement. These modes use different source formats, so draw.io changes are not presented as regenerated PlantUML.

Limitations to Keep in Mind

PlantUML's official sources can establish that the core workflow is text-driven and that many integrations exist. They cannot prove that every editor lacks drag-and-drop or that one third-party product supports a specific interaction today. Product claims require current testing.

Likewise, text-first editing is not universally superior. It trades direct spatial manipulation for portability, automation, and reviewability.

  • PlantUML examples and diagram choices
  • How to save PlantUML source and export images
  • Fix PlantUML newpage output
  • PlantUML official web editor
  • PlantUML integrations

Still Have Questions?

Test the editor with one real project scenario rather than a marketing demo. You can open the OnUML editor to use text-driven PlantUML generation or switch to draw.io for direct drag-and-drop editing. If multi-page rendering is part of your evaluation, continue with PlantUML newpage fixes.