Spokes.wiki Search About
Created
Updated
See also
connectomics · male-fly-connectome · hhmi-janelia · training-data-quality

Neuroglancer

"WebGL-based viewer for volumetric data" — a browser client for looking at very large 3D image volumes and the segmentations over them, in cross-section and as meshes. Apache-2.0, TypeScript, 1,364★ / 381 forks / 235 open issues, repository created 2016-05-27 and pushed 2026-09-05. It is the tool male-fly-connectome points readers at to explore the 166,000-neuron fly connectome.

"This is not an official Google product." The README says so in its second line, under the google/ organisation. A public research resource that several published connectomes are distributed through runs on a side project with no support commitment — worth recording plainly rather than reading as either reassuring or alarming.

What it actually is

Purely client-side. "Neuroglancer itself is purely a client-side program, but it depends on data being accessible via HTTP in a suitable format." There is no server of its own: point it at a URL, and the browser streams the volume. That is why a connectome can be published as a link.

Two threads, because the browser forces it. Work is split between the main UI thread ("frontend") and a WebWorker ("backend") that queues, downloads and preprocesses data. The README states the constraint driving the design: browsers "do not support any form of shared memory or standard synchronization mechanism" and require all DOM and WebGL work on the UI thread. So the architecture is a consequence of the platform, not a preference.

It needs a real GPU path. WebGL 2.0 plus the EXT_color_buffer_float extension; Chrome ≥ 51, Firefox ≥ 46, Safari ≥ 15.0. And a stated limitation that bites in practice: browsers block https:// pages from fetching http:// URLs, so mixed-protocol data needs a workaround.

The format is the more interesting artifact

Neuroglancer reads precomputed (its own), N5, Zarr v2 and v3, OME-Zarr, BOSS, DVID, Render, NIfTI and Deep Zoom, plus Python in-memory volumes with automatic mesh generation.

The one it defined has grown its own ecosystem, and the README's "Related Projects" list is the evidence: CloudVolume (Python interface to the precomputed format), BigArrays.jl (the Julia one), Igneous (meshing, skeletonizing and downsampling pipelines for precomputed), neuroglancer-scripts (converting the BigBrain dataset into it), mesh-n-bone from Janelia CellMap, and TensorStore, Google's own C++/Python library for reading and writing the multi-dimensional arrays these formats hold. There is also a HoloViz Panel extension that puts the viewer inside a Jupyter notebook.

A viewer's file format becoming the interchange layer for a field is a familiar shape, and this spoke should note it without overclaiming: nothing here measures adoption, and the list is the project's own.

Why it sits in this spoke

It is the delivery end of the pipeline on connectomics. A connectome is a dataset whose value depends entirely on someone being able to inspect it — 166,000 neurons is not a table anyone reads — and the release of male-fly-connectome is, in practice, the release of a viewer URL. The same is true of the activity-and-structure datasets that post announces (ZAPBench, Fish Fire&Wire).

The adjacent question this spoke does not have a source for: whether making a dataset explorable in a browser changes who checks it. Proofreading the fly connectome took years of expert work (training-data-quality); a viewer that anybody can open is the cheapest possible route to a second pair of eyes, and no one here has measured whether that produces corrections.

Not examined

No benchmark, no rendering-performance figure, no dataset-size limit, and nothing about how the precomputed format actually encodes multi-resolution meshes. The documentation site (neuroglancer-docs.web.app) was checked to exist and not read.

connectomics · male-fly-connectome · hhmi-janelia · training-data-quality · machine-learning · google