Blue Math

Math library for the Web. TypeScript. Open Source.

Launch Shell


N-Dimensional array data structure like numpy's ndarray.

  • Efficient storage in Typed Arrays
  • Flexible slicing and indexing
API Reference

Linear Algebra

Vector and Matrix Math.

  • Powered by venerable LAPACK library, compiled to Javascript using Emscripten.
  • Solving of linear equation systems (LU decomposition, Least Square)
  • Matrix decomposition operations (SVD, Cholesky, QR)
  • Standard matrix properties (Rank, Determinant, Inverse)

NURBS geometry

Implementation of NURBS curves and surfaces (Non-Uniform Rational BSplines), which work as building blocks of Geometry primitives in a CAD applications

  • Bezier Curves and Surfaces
  • Rational BSpline Curves and Surfaces, with algorithms for degree elevation, knot refinement etc.
  • Adaptive tessellation


Implementation of topology using Winged edge data structure. Used in addition to geometry to do Solid modeling in CAD applications

  • Topology classes that define Vertex, Edge, Face, Loop, Body
  • Manipulation of topology by means of Euler operators