When to use Fabric

Juriy Zaytsev edited this page Aug 19, 2013 · 7 revisions

Things Fabric is good at:

  • Object manipulation, where object is any of "simple shape, image, vector shape, text" and manipulation is any of "moving, rotating, resizing"
  • Image filters (few filters built-in and easy to define your own)
  • Displaying large number of objects on canvas (performance-wise)
  • Displaying rich text (multiline, text alignment, text decorations, background, shadow, outline)
  • Parsing SVG and displaying it on canvas
  • Rendering SVG, or any of Fabric-supported content (simple shapes, vector shapes, images, text) on a server, via Node.js
  • Animating any of "simple shapes, vector shapes, images, text"
  • Grabbing objects via non-transparent content (not only through bounding box)
  • Free drawing (few brushes built-in and easy to define your own)

Things Fabric is not so good at:

  • Non-trivial collision detection (e.g. per-pixel or per-curve)
  • Non-trivial charts (nothing outside of the box, although possible to create chart abstractions)
  • Sprite-based animation (nothing outside of the box, although possible to create sprite abstractions)
  • 3D object transformations (best to use 3d library like three.js)