tensogram 0.16.0

Fast binary N-tensor message format for scientific data — encode, decode, file I/O, streaming
Documentation

tensogram

The primary Tensogram library for fast binary N-tensor message format.

This crate provides encode, decode, file I/O, and streaming capabilities for scientific data. It supports self-describing messages with CBOR metadata, multiple tensors per message, partial decode, and remote access to cloud storage.

Usage

use tensogram::{encode, decode, EncodeOptions, DecodeOptions};

let message = encode(&meta, &[(&desc, &data)], &EncodeOptions::default())?;
let (_, objects) = decode(&message, &DecodeOptions::default())?;
// File API with partial decode
use tensogram::{TensogramFile, decode_range};

let file = TensogramFile::open("data.tgm")?;
let slice = decode_range(&file, 0, &[0..100, 50..150])?;

Installation

[dependencies]
tensogram = { version = "0.14", features = ["mmap", "async", "remote"] }

Documentation

License

Copyright 2026- European Centre for Medium-Range Weather Forecasts (ECMWF).

Licensed under the Apache License, Version 2.0. See LICENSE for details.