A canvas with shapes, smart connectors, text, undo, zoom and export is a weekend of agent work on React Flow or a similar library, and it can save to a local database. Most of what you pay for stays out of reach: a deep shape library for UML, ER and cloud notation, real-time co-editing with comments, faithful Visio import, and the Confluence and Jira integrations. Meanwhile draw.io and Excalidraw are free and already handle the solo case, so building your own makes sense only if you want a diagram tool shaped around your own files.
Before you buildLucidchart Free allows three editable documents. If that is enough, or if draw.io fits, you may not need your own tool at all.
Build me a personal diagram editor to replace Lucidchart. Requirements: - Node.js 22 + TypeScript: a Fastify server and a React editor built with Vite on `@xyflow/react`. `npm start` serves http://localhost:4900 and listens on 127.0.0.1 only. - Storage: better-sqlite3 in ./data/diagrams.db: documents (title, JSON of pages, nodes and edges, updated_at) and a versions table that keeps the last 30 autosaves per document. - Canvas: pan and zoom, drag to place, multi-select, copy and paste, group and ungroup, snap to a grid, alignment guides, undo and redo (50 steps), and a keyboard shortcut for each action. - Shapes: a palette with flowchart (process, decision, terminator, data, document), UML class and actor, ER table, and basic shapes with text, fill, stroke and font. Folders of SVG icons placed in ./shapes/ show up in the palette without a rebuild. - Connectors: straight, curved and orthogonal lines that follow shapes when they move, with arrow heads, labels and dashed styles. An auto-layout button uses `dagre`, top-down or left-right. - Pages: several pages per document, switched by tabs, and a text import of Mermaid flowcharts (`mermaid` parser) that creates nodes and edges. - Export: PNG at 1x, 2x or 4x, SVG with text kept as text, PDF through `jspdf` + `svg2pdf.js`, and the JSON file itself. Import the JSON back in. - Single user. No accounts, no telemetry, local-first: nothing leaves the machine. - Out of scope: real-time collaboration, comments, Visio import, org-chart data import, integrations. - README: how to back up ./data, how to add shape folders, and a list of what the SVG and PDF exports do not preserve.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own Lucidchart.
Add draw.io import to the diagram editor in this folder. Requirements: - Accept .drawio and .xml files with mxGraphModel content, including compressed diagrams (base64, raw deflate through `pako`, then URL-decode). - Map rectangles, ellipses, rhombuses, text and edges with their labels, fill and stroke colours to the editor's own shapes; unsupported shapes become a grey rectangle named after the style. - List what was converted and what was approximated after each import. - Add three sample files in ./samples and tests that import each one. - Update the README.
Add read-only sharing to the diagram editor in this folder. Requirements: - A Share button creates /s/<random-token> that shows the current version in view-only mode with pan, zoom and PNG download. - Tokens can be revoked and can carry an expiry date; expired or revoked links return 404. - Shared pages load no editor code and no external scripts. - Access stays on the same single-user login for editing; only /s/ routes are public. - Update the README, including how to expose just /s/ through a tunnel.
Add a history view to the diagram editor in this folder. Requirements: - A side panel lists saved versions with time and a thumbnail rendered from the JSON. - Selecting a version previews it read-only; Restore saves it as a new version, never deleting the newer ones. - Keep autosaves for 7 days and named versions forever; allow naming a version. - Add a test that restores a version and checks the current document equals it. - Update the README.
A diagram becomes a shared document: colleagues edit and comment on the same file, it is embedded in Confluence or Jira, and an IT department sends Visio files. Lucid is what the team already agreed on, and at $9 a seat nobody argues, even though draw.io covers a solo user for free.
Estimate · Runs locally for free, or on a $5 VPS if you want it from several devices. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Free | $0/user | $0/user | 3 editable documents, 75 shapes per document, 100 templates, basic data linking, presentation mode, commenting, Lucid AI. |
| Individual | — | $9/user | Unlimited editable documents and objects per document, premium templates and shape libraries, Visio import and export, 1 GB storage. |
| Team | — | $10/user | Everything in Individual plus revision history with versioning, password-protected publishing, advanced controls for Visual Activities, Microsoft 365, Confluence and Jira integrations, developer platform. |
| Enterprise | custom | — | SAML, enforceable sharing restrictions, Salesforce integration, team hubs, Lucidspark included, Enterprise Shield. |
Free allows 3 editable Lucidchart documents with 75 shapes each, 100 templates, commenting and presentation mode.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Real-time editing with comments and cursors for several people, Large shape libraries for UML, ER, BPMN, network and cloud diagrams.
About $9 a month on the Individual plan per seat, $108 a year (checked 2026-10-19).
Real-time editing with comments and cursors for several people; Large shape libraries for UML, ER, BPMN, network and cloud diagrams; Visio import and export with faithful formatting; Integrations with Confluence, Jira, Microsoft 365 and Salesforce; Data linking, org-chart import and version history. If any of those matter to you, keep paying.
Yes: draw.io (diagrams.net) (open source), Excalidraw (open source), Mermaid (open source).