The canvas already supports Export PNG and Export JSON from the export menu. Adding Export SVG would give a scalable, editable vector export (useful for docs/presentations) without much new code, since ReactFlow already renders the canvas as SVG under the hood.
Where to look
frontend/components/canvas/InfraCanvas.tsx — handleExportPNG and handleExportJSON, plus the export menu items around them
- ReactFlow's own export utilities can typically produce an SVG string directly from the current viewport
Acceptance criteria
- New "Export SVG" option in the export menu, same location as PNG/JSON
- Downloads a
.svg file of the current canvas view, matching what's visible (respecting current filters/grouping)
Why this is a good first issue
Frontend-only, two existing export implementations to follow the pattern of, no backend/protocol changes needed.
The canvas already supports Export PNG and Export JSON from the export menu. Adding Export SVG would give a scalable, editable vector export (useful for docs/presentations) without much new code, since ReactFlow already renders the canvas as SVG under the hood.
Where to look
frontend/components/canvas/InfraCanvas.tsx—handleExportPNGandhandleExportJSON, plus the export menu items around themAcceptance criteria
.svgfile of the current canvas view, matching what's visible (respecting current filters/grouping)Why this is a good first issue
Frontend-only, two existing export implementations to follow the pattern of, no backend/protocol changes needed.