Browser graphics


General javascript drawing

If you want to do SVGs, snap.js is a modern SVG library by the author of raphaël.js.

Javascript statistical/mathematical graphing

See plotting on the web.

3D

3D graphics in the browser is convenient and somewhat performant. And you can do 3d dance parties in the browser, which is surely the benchmark.

Two common options use OpenGL ES, the mobile- and browser- friendly option.

  • Scenejs seems to specialise in loading up geometries and shapes and physics for realistic scene modelling
  • three.js does the same things, but does more abstract stuff with them
  • shadertoy support writing raw GSL shaders in the browser.

Everything supports lense flare, which is the main thing.

For desktop apps and a larger OpenGL subset there is a desktop option, Plask which seems to be some kind of particle-system-friendly macOS app, with spurty development but nifty potential.

Handy tools

  • cables.gl attempts to create a VVVV-style patcher in javascript.

    cables is your model kit for creating beautiful interactive content. With an easy to navigate interface and results in real time, it allows for fast prototyping and prompt adjustments.

    Working with cables is just as easy as creating cable spaghetti:

    You are provided with a given set of operators such as mathematical functions, shapes and materials. Connect these to each other using virtual cables to create the scene you have in mind. Easily export your piece of work at any time. Embed it into your website or use it for any kind of creative installation.

  • Threefab designs THREE.js scenes.

  • Nunustudio does too (source code )

  • Livecodelab (source)

  • Threenodes.js (source) also attempts to create a VVVV-style patcher in javascript

  • neuroglancer

    Neuroglancer is a WebGL-based viewer for volumetric data. It is capable of displaying arbitrary (non axis-aligned) cross-sectional views of volumetric data, as well as 3-D meshes and line-segment based models (skeletons).

  • p5.js a port of processing to js. Seems CPU profligate.

  • centi.js hmm.