Expand description
Core library for the SpatioTemporal Tiles (STT) format.
The canonical container is the packed format (pack): a per-dataset
manifest.json plus many content-addressed, immutable pack objects
(packs/<blake3>.sttp) and one directory object (index/<blake3>.sttd).
Splitting a dataset into small, immutable objects is what makes it
edge-cacheable on a plain CDN — see docs/spec/stt-packed-format.md.
Building blocks:
pack— the packed format:PackWriter,PackedReader,Manifest,transcode_archive_to_packs,verify_packed_objects.arrow_tile— Arrow-IPC tile payloads with GeoArrow geometry.directory— the run-length tile directory (v5 = packed; v4 = legacy single-file).curve— spatial (Hilbert) + temporal blob ordering.metadata— dataset metadata (folded verbatim into the manifest).compression— per-blob zstd / gzip.
The single-file archive container (ArchiveWriter / ArchiveReader)
predates the packed format and is no longer a deployment target. It
survives only as (a) the bounded-RAM streaming intermediate that
stt-build --streaming-arrow transcodes into packs, and (b) the read side
that transcode_archive_to_packs consumes when migrating old archives.
Re-exports§
pub use pack::repack_directory;pub use pack::transcode_archive_to_packs;pub use pack::transcode_archive_to_packs_paged;pub use pack::transcode_archive_to_packs_paged_level;pub use pack::transcode_packs_to_packs_paged_level;pub use pack::verify_packed_objects;pub use pack::Manifest;pub use pack::PackWriter;pub use pack::PackedReader;pub use directory_page::decode_paged_directory;pub use directory_page::encode_paged_directory;pub use directory_page::verify_paged_structure;pub use directory_page::PageDescriptor;pub use directory_page::PagedRoot;pub use directory_page::DEFAULT_PAGE_ENTRIES;pub use archive::Archive;pub use archive::ArchiveReader;pub use archive::ArchiveWriter;pub use curve::BlobOrdering;pub use error::Error;pub use error::Result;pub use tile::TileId;pub use timestamp::normalize_timestamp_to_ms;pub use timestamp::reject_negative_timestamp;pub use timestamp::scale_timestamp_to_ms;pub use timestamp::TimestampUnit;pub use types::BoundingBox;pub use types::TimeRange;
Modules§
- archive
- STT archive format — a single-file, range-request-friendly container.
- arrow_
tile - Arrow-based tile payload format.
- budget
- Tile size budget enforcement and intelligent feature dropping
- compression
- Compression utilities for tiles. The format is zstd-only — there is no
gzip path (it was never shipped; zstd beats it on both ratio and browser
decode).
Compression::Noneexists only for already-incompressible blobs. - curve
- Space-time blob ordering for the v4 writer.
- directory
- STT v5 directory — a compact, range-request-friendly tile index.
- directory_
page - Paged-directory container (Wave 2 — COPC/GeoParquet-1.1 steal).
- error
- Error types for the STT library
- geometry
- Geometry processing utilities
- metadata
- Archive metadata structures
- pack
- STT packed format — a multi-object, edge-cacheable container.
- projection
- Coordinate projection utilities
- tile
- Tile types and operations
- timestamp
- Shared timestamp-unit normalization for all STT input adaptors.
- types
- Core types used throughout the STT library