react-canvas icon indicating copy to clipboard operation
react-canvas copied to clipboard

A pluggable layout and graphics system aimed at powering desktop publishing as well as storm-react-diagrams

STORM React canvas (WIP)

A brand new foundation for storm-react-diagrams

Features

Core

  • virtual co-ordinate system
  • real co-ordinate system
  • matrix transformation, precomputed and optimized
  • forward dimensions and inferred dimensions
  • history push and pop (wip)
  • SVG and standard DOM support
  • pluggable event bus
  • pluggable state machine
  • model driven with serialization layers (imperative and declarative styles)
  • serialization and deserialization

Canvas

  • translate / panning
  • zoom
  • de-select elements
  • fit to width
  • multiple ordered layers
  • ordered elements on layers

Primitives

  • multiple infinite grids
  • point based vectors (wip)
  • ellipse
  • rectangles
  • pages

Groups

  • group selection
  • group translate
  • group scaling from any anchor point
  • group rotation from origin (or any arbitrary point)
  • group transform with mirror modifiers (wip)