stkim70 / react-canvas

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

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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)

About

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

License:MIT License


Languages

Language:TypeScript 95.5%Language:JavaScript 2.6%Language:CSS 1.9%