Files
Wiring-Designer/ROADMAP.md
T
Kyle f32203b630 Initial commit — wiring diagram maker with full feature set
- FastAPI + SQLite backend with routers for diagrams, devices, wires,
  bundles, connectors, export, and Octopart/Nexar search
- Konva.js canvas: ortho/direct/curved routing, wire crossings, harness
  mode, snap-to-grid, multi-select, drag, resize, undo
- Wire features: color/stripe, twisted pair helix, shielded glow,
  gauge size label, multi-core bundle grouping, length/unit tracking
- Device library: connector, terminal block, cable, splice, label, group,
  relay, fuse, switch, component with custom connector support
- Exports: BOM CSV, assembly TXT, JSON, formboard layout, PNG image
- Auto-migration for schema changes via ALTER TABLE at startup

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 12:51:21 -04:00

4.6 KiB

WireDraw Feature Roadmap

Backlog (work top-to-bottom)

Routing & Canvas

  • 11. Curved / arc routing — third route mode (∿ Curved) that draws smooth bezier curves instead of right-angle or straight; toggle alongside Ortho/Direct
  • 12. Grid snap — optional snap-to-grid (10px); toggle button in toolbar + G shortcut
  • 13. Straighten wire — right-click a wire → "Straighten" clears all saved waypoints and re-routes from scratch
  • 14. Zoom to selection — right-click multi-select → "Zoom to selection"; Shift+F shortcut
  • 15. Wire labels on canvas — wire label + length rendered mid-wire as a small tag

Right-Click Menu Additions

  • 16. Align & distribute — right-click multi-select → Align Left / Align Right / Align Top / Align Bottom / Distribute Horizontally / Distribute Vertically
  • 17. Send to back / Bring to front — right-click any device → layer order shortcuts (especially useful for Section Boxes)
  • 18. Copy wire properties — right-click a wire → "Copy style"; then right-click another wire → "Paste style" to apply color/gauge/stripe
  • 19. Select all wires on net — right-click a wire → "Select all on net" highlights every wire sharing the same wire label/net name
  • 20. Lock device — right-click → "Lock position" prevents accidental moves; locked devices show a padlock badge

Productivity

  • 21. Find / search — toolbar search box filters devices by reference/label and highlights matches on canvas; Ctrl+F shortcut

  • 22. Import JSON — drag-and-drop or File→Import a previously exported JSON to restore a diagram

  • 23. Duplicate diagram — diagram list context menu → "Duplicate" clones all devices and wires under a new name

  • 24. DRC / design-rule check — one-click check that flags: unconnected pins, duplicate references, wires with no length set, missing part numbers; results shown in a panel

  • 25. Pin part numbers — each pin row in the properties panel has a "Contact P/N" field; shows up correctly in BOM export as a separate line item

  • 1. Right-click context menu — quick actions on devices (duplicate, delete, add pin, save to library) and wires (delete, clear waypoints)

  • 2. Multiple sheets per project — each diagram can have named pages/sheets; off-page connector stubs link nets across sheets

  • 3. Grouping / section box — draw a labeled rectangle around any area of the canvas for visual organization

  • 4. Pin part numbers — each pin on a device has its own contact/terminal part number; shows up correctly in BOM export

  • 5. Signal names — net-level labels independent of wire labels; a signal name can span multiple wires; clicking a signal highlights all wires on that net

  • 6. Shielded cable marker — flag on a wire/cable indicating shielding; renders as a dashed outer outline; shows in BOM and cutlist

  • 7. Twisted pair marker — flag + twist pitch field for CAN-bus and differential signal pairs; renders as a helical decoration; shows in cutlist

  • 8. Multi-conductor cables — a cable object that groups N wires under one jacket; single cable part number in BOM; conductors shown as child wires

  • 9. 1:1 formboard view — a separate view/export where wire routing lengths are true scale so the diagram can be printed and used as a build board

  • 10. Octopart API integration — part number lookup & validation against live catalog; auto-fill manufacturer, description, and datasheet link

Completed

  • Octopart/Nexar integration (🔍 button on Part Number; auto-fills manufacturer, description, datasheet; BOM export includes description+datasheet columns)
  • Multi-conductor cables (cable device type; jacket + conductor row rendering; conductor color/name editor; cable section in BOM & assembly)
  • Twisted pair marker (checkbox + pitch field; white helix overlay on wire; stored in DB)
  • Multiple sheets per project (tab bar, add/rename/delete, per-sheet devices & wires)
  • Connector / device library with drag-to-canvas
  • Custom connector CRUD (modal + backend)
  • Wire drawing with ortho/direct routing and waypoints
  • Wire jump arcs at crossings
  • Multi-select + rubber-band selection
  • Multi-device drag (wires follow)
  • Resize handles on devices
  • Text wrapping + font size per device
  • Copy / paste / duplicate
  • Undo (Ctrl+Z / button)
  • BOM CSV export
  • Assembly TXT export
  • JSON export
  • PNG export
  • Wire properties: color, stripe, gauge, length, notes
  • Pin side switching + add/remove pins