Advanced Web Platform

See also: GUIs, image processing
Code examples: Drawing

Programmatic visuals

2D Graphics

Rendering libraries

  • Sprite.js - Simple object-based library for drawing, animation and interaction
  • Sketch.js - Lightweight interactive visuals, which can also integrate three.js
  • Svg.js - SVG manipulation and animation
  • Snap.svg - Interactive SVG rendering
  • Pixi.js - Sprite-oriented 2D graphics engine aimed for games. High performance.
  • Fabric.js - Canvas-based drawing
  • Konva - Canvas-based drawing
  • Two.js - Motion graphics-oriented engine. SVG/canvas/WebGL rendering
  • EaselJS - Canvas-based drawing http://p5js.org/
  • p5.js - Interactivity, animation and visualisation (Javascript version of Processing)

Colour

  • chroma.js - Colour mixing, scales and other human-friendly transformation of colour values

Generative

Tools

  • Paths Edit SVG paths in the browser

Examples

3D Graphics

See also Working with mixed, augmented and virtual reality.

Inspiration

Visualisation

  • Gio.js - 3D globe data visualisation

Rendering

  • Three.js - Deep 3D rendering engine
  • Babylon.js - Feature-rich 3D rendering engine, includes WebVR, gamepad support. Uses WebGL
  • stack.gl - Modules for working with WebGL
  • deck.gl - Specialised for high-performance map rendering with overlaid data
  • Scene.js - Scene graph and helpers, ala three
  • Goo Create - Games and VR for the browser
  • Play Canvas - Games and other 3D content for the browser
  • Flat Surface Shader Primitive rendering engine which supports WebGL, canvas and SVG.
  • OSG.JS - Open Scene Graph 3D rendering

Low-level rendering

Fundamentals

Projection-mapping

  • HeavyM
  • Maptastic - Helps you to set up deformations of HTML elements to match the world

Tutorials

Virtual, Mixed, Augmented Reality

  • A-Frame - Framework for VR in the browser
  • AR.js - AR for mobile devices running in a standard browser
  • ARCore - Google's AR platform for Android. They've also made a cross-platform browser that works on Android and iOS for developing AR experiences with web technologies
  • Argon.js - AR with web technologies and a free cross-platform browser
  • Viro - AR with web technologies and a free cross-platform browser (2)
  • HoloJs - Microsoft Holographic apps with JS
  • Perception Toolkit - Track and detect markers (Google)

Graphs and Diagrams

Low level

  • isect - Calculate intersection of lines

Type

Code examples: Typography

Decorative patterns with type

  • Yuan Chuan's work 1, 2
  • CSS Doodle - A script format for this kind of thing

Other design