← all apps

SpectraCodec Decoder

Some mzML files are self-describing: their whole experiment is encoded into the first spectrum as synthetic peaks in the m/z 5–12 window, laid along a Hilbert curve (SpectraCodec). Drop a folder of them in and this pulls the embedded metadata out of every file — decoded in parallel across your CPU cores by a Rust → WASM engine — and gives you one combined metadata table (TSV / JSON). Everything runs locally; only the first spectrum of each file is read.

Drop mzML file(s) or a folder here or click to choose · scales to hundreds of files · nothing is uploaded
Files
0
Decoded
0
Failed
0
Throughput
–
Elapsed
0.0s
Cores
–
#fileunique_file_idcategorygenus / strain closest 16StimepointOD600mode filesfasta

Decoding mirrors SpectraCodec.decode_message_from_file: the first spectrum's peaks are filtered to m/z 5–12, intensity 100–1000, mapped to Hilbert coordinates, walked back to bit positions, then base64-decoded and zlib-inflated to the payload JSON. The inflate + filtering run in JS (native DecompressionStream); the Hilbert walk runs in a Rust → WASM module; the whole thing runs in a pool of Web Workers. Each run is joined to its row in the embedded manifest by lcms_run_uuid. Example dataset: lbnl-metabolomics/ExoW3-NLDM.