A high-speed three.js substrate for visualizing biofidelic data

View the Project on GitHub aplbrain/substrate

If you’re using substrate for the first time, you might want to take a look at the Getting Started page.

Top-Level API

Built-In Layers

Name Description
LineSegmentsLayer Useful for plotting sets of lines
ObjLayer Adds a .obj file to the scene
AxisLayer Adds the cardinal axes to the scene
LightingLayer Adds a light at the origin


Matelsky et al 2017, biorXiv

@article {Matelsky217349,
          author = {Matelsky, Jordan K and Downs, Joseph and Wester, Brock and Gray Roncal, William},
          title = {A substrate for modular, extensible data-visualization},
          year = {2017},
          doi = {10.1101/217349},
          publisher = {Cold Spring Harbor Laboratory},
          abstract = {As scientific questions grow in scope and datasets grow larger, collaborative research teams and data dissemination have emerged as core research enablers. However, simply visualizing datasets is challenging, especially when sharing information across research groups or to the broader scientific community. We present substrate, a data-visualization platform designed to enable communication and code reuse across diverse research teams. Written in three.js, our platform provides a rigid and simple, yet powerful interface for scientists to rapidly build tools and effective visualizations.},
          URL = {},
          eprint = {},
          journal = {bioRxiv}