Two.js Versions Save

A renderer agnostic two-dimensional drawing api for the web.

v0.8.13

2 months ago

What's Changed

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.12...v0.8.13

v0.8.12

6 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.11...v0.8.12

v0.8.11

9 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.10...v0.8.11

v0.8.10

1 year ago

What's Changed

New Contributors

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.7...v0.8.10

v0.8.6

2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.5...v0.8.6

v0.8.7

2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.5...v0.8.7

v0.8.5

2 years ago

What's Changed

New Contributors

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.3...v0.8.5

v0.8.3

2 years ago

Author Notes

  • Improved Two.Element.className construction
  • Reintroduced TypeScript Type Declarations from manually

What's Changed

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.2...v0.8.3

v0.8.2

2 years ago

Author Notes

  • Improved types declarations
  • Added Shape.worldMatrix
  • Allowed string interpretation on Two.Utils.read.path
  • Removed ES6+ specific features: private variables

What's Changed

Full Changelog: https://github.com/jonobr1/two.js/compare/v0.8.0...v0.8.2 & https://two.js.org/change-log/

v0.8.0

2 years ago

Version 0.8.0 introduces a port of the previously EcmaScript 5 syntax and brings it to modern day JavaScript coding practices with EcmaScript 6 features supported in all major browsers.

📋 This is a more-or-less entire rewrite of Two.js to use EcmaScript 6 features. In particular:

  • const / let instead of var for tighter scoping
  • class construction instead of prototypical modifications
  • Expanded classification of classes. For instance:
    • Two.Events is now a class
    • Two.Element is a new base class of Two.Shape, Two.Gradient, and anything else that can be queried in the scenegraph
  • Where possible functions are named instead of anonymous
  • Removes all MakeObservable methods in favor of Object.defineProperty invocations on constructor
  • Module imports are through typical exports and except for the root Two.js class, not with default. So you'll need to import specific modules like so:
import { Vector } from 'two.js/src/vector.js';
var v = new Vector();

🏁 These changes allow for improved:

  • TypeScript Declarations (fully expanded and invoked through TypeScript's types compiler)
  • Improved documentation
  • Code legibility and OOP style
  • More legible performance debugging
    • Easier to identify culprit functions in Chrome et al. performance debug consoles
  • And improved SVG interpretation

⚠️ These changes break:

  • Loose interoperability between Two.Vector and Two.Anchor. For any curve, it's required you use anchors instead of vectors now.

🗒️ All tests and first party examples are passing with documentation updated on two.js.org/docs