PhysicsJS (Yes, a JavaScript Physics engine)

Sign in to queue


In today's Web Wednesday post we're highlighting something you might think a little oxymoronic, a JavaScript Physics engine.

It's still in an Alpha status, but even so, it's looking pretty cool...


A modular, extendable, and easy-to-use physics engine for javascript


PhysicsJS is still under development (alpha version 0.5.1), and documentation is unfinished. Feel free to use it, just be warned that the API is in flux and better documentation is on its way! (Contributors and help needed!)


  • Use as an AMD Module (requireJS), or global namespace.
  • Modular! Only load what you need. The core library is only 31k minified.
  • Extendable! Don’t like the collision detection algorithm? Replace it with your own!
  • Not tied to a specific renderer. Display it in DOM, HTML5 Canvas, or whatever…
  • Easy! It’s a library written IN javascript… not C compiled into javascript. The syntax is familiar for javascript developers.
  • Extensions to support points, circles, and arbitrary convex polygons.
  • Extensions to support constant gravity, newtonian gravity, collisions, and verlet constraints.

The fastest way to get a feel for what's possible is by checking out the Demos.



There's even documentation already too.

Introductory documentation can be found on the PhysicsJS website. The wiki contains more advanced usage instructions.

Due to the newness of this library, documentation is non-exhaustive. If there are any points of confusion, please feel free to log an issue or contact me. You can also edit the wiki yourself to fill in the gaps. Any help with documenting is appreciated.


And the source is officially available too;


The Discussion

Add Your 2 Cents