Find Nuclei

Data Server

Serve your data. Your rules.

A self-hosted OME-Zarr server for your lab. Share microscopy data with your team over the browser, without uploading anything to the cloud. One Docker command to run.

Quickstart

Running in one minute.

Point it at your Zarr data, open the admin UI, create a token. Done.

Terminal
docker run -d \
  -p 3333:3333 -p 3334:3334 \
  -v /path/to/zarr/data:/data/storage \
  -v ~/.findnuclei:/data/config \
  -e FN_ADMIN_PASSWORD=changeme \
  fn0000/fn-data-server

Admin UI on port 3334. Data API on port 3333. Open the admin console, create a token, open the viewer with the URL.

Features

What you get.

One Docker command

Run it on any laptop, workstation, or NAS. No database, no installer.

Stays on your network

Data never leaves your infrastructure. The viewer streams tiles directly from your server.

JWT access control

Scope tokens to specific datasets, departments, or users. Optional TTL, IP, and host restrictions.

S3-compatible API

Drop-in replacement for S3-style access patterns. Works with any OME-Zarr client.

Admin web UI

Browse datasets, generate tokens, and manage permissions through a simple dashboard.

Scales with you

One to fifty-plus concurrent users. Run multiple containers behind a load balancer for more.

Use cases

Who it's for.

Share data with your team

Colleagues open a link in their browser. No VPN into your facility, no clunky file transfers, no "can you re-export that as TIFF?"

Serve data from a shared NAS

Point the server at your existing storage. Your pipeline writes Zarr, the team views it. Same files, same place.

Publish to internal portals

Embed live datasets in your lab wiki or internal data portal with the embeddable viewer.

Host data for a study

Give reviewers and collaborators a time-limited token to explore your dataset. Revoke it when the paper drops.

Security by default

Tokens in. Data out.

By default, the Data Server requires JWT tokens for every request. You create them in the admin UI, scoped to specific datasets, with optional time-to-live, IP, and host restrictions.

When a viewer opens a protected URL without a token, it shows a prompt. The user pastes it in and the data loads. No user accounts to manage, no SSO to wire up.

On fully trusted networks (isolated lab VLANs, for example), you can run in open mode. No tokens, no friction. Your call.

Start sharing data.

Pull the image, run the container, open the admin UI. Takes about a minute.