Skip to main content

taco

Read and write TACO datasets in Python.

pip install taco-eo
python examples/minimal.py

Published wheels include the native TACO reader. Building from the source distribution requires a C++23 compiler, CMake, Ninja, pkg-config, libcurl 7.83 or newer, and OpenSSL 3 or newer.

import taco

samples = taco.read("dataset.zip")
parts = taco.read(["part-0.zip", "part-1.zip"])

dataset = taco.open_dataset("dataset.zip")
targets = dataset.read(files="target.tif")
train = dataset.sql("SELECT * FROM dataset WHERE \"ml:split\" = 'train'")

export() writes the complete samples selected by a SQL query. The query may use dataset, sample, or any declared metadata level. A match at a lower level still copies the whole sample. Collection fields are inherited unless they are replaced. For a remote source, only payloads from matching samples are downloaded. Pass overwrite=True to replace an existing TACO output.

source = "https://data.source.coop/major-tom/core-dem/"
taco.export(
    source,
    "core-dem-sample.zip",
    sql='SELECT * FROM sample ORDER BY id LIMIT 10',
)

Remote reads and exports show download progress in interactive terminals. Writers show their build progress when opened with progress=True.

GeoEnrich

GeoEnrich uses the public 10 km MajorTOM index on Source Cooperative by default, so it needs no Earth Engine account. Place MajorTOM(dist_km=10) in the same metadata level before using it:

taco.Level(
    "sample",
    stac=taco.extensions.STAC(),
    majortom=taco.extensions.MajorTOM(dist_km=10),
    geoenrich=taco.extensions.GeoEnrich(
        ["elevation", "temperature", "admin_countries"],
    ),
)

Set backend="earthengine" explicitly to retain centroid-based Earth Engine sampling. That backend requires taco-eo[geoenrich] and an authenticated Earth Engine installation.

Examples

Every example is self-contained, uses synthetic data, and writes its output in the current directory.

Spatial and temporal metadata follow the fields of a STAC Item. Temporal stores datetime or a start_datetime/end_datetime range, Spatial stores the footprint and its bbox, and STAC stores both. Give a sample its grid (proj_code, proj_shape, proj_transform) and the writer computes the footprint, or give the footprint itself when no single grid describes it.

Example What it demonstrates
minimal.py Smallest possible single-file dataset
numpy_minimal.py NumPy image and mask assets with a train/test split
change_detection.py Metadata on before/ and after/ folders
sequence.py Variable-length asset sequences
time_series.py Per-observation time and cloud metadata
geospatial.py Compact STAC metadata and derived MajorTOM cells
stac_segmentation.py STAC footprints computed from UTM grids, with labels, bands, and scaling
oceantaco.py OceanTACO-inspired STAC footprints for irregular SWOT swaths and Argo collocations
partitioned.py ZIP partitions and their TACOCAT catalog

Release files for taco-eo 0.11.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for taco-eo 0.11.0
File Size Uploaded
taco_eo-0.11.0.tar.gz 787.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for taco-eo 0.11.0
File
taco_eo-0.11.0-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
taco_eo-0.11.0-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details
taco_eo-0.11.0-py3-none-manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.28+ ARM64 Details
taco_eo-0.11.0-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
taco_eo-0.11.0-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 21.4 MB

Release files / taco_eo-0.11.0.tar.gz

Download URL taco_eo-0.11.0.tar.gz
Size 787.4 kB
Tags Source
SHA-256 checksum
How to use checksums
58af5d9acb2c7f3fa10db8490a03a973cf6881ae2f3ebdacf3afa8731f203006
BLAKE2b-256 checksum
How to use checksums
4cf17312fc7554130927f70bd9a59447fbedddfde0d61ffa1842124ba701d0c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / taco_eo-0.11.0-py3-none-win_amd64.whl

Download URL taco_eo-0.11.0-py3-none-win_amd64.whl
Size 2.9 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
1737a949d82b5b8a3259152c40d0f4baa0ebf61a377e500afeccbc01ae27bf8c
BLAKE2b-256 checksum
How to use checksums
9e8360a817d2b31be014198bef61cd1a9962885879bfb7f455c80877140a2680
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / taco_eo-0.11.0-py3-none-manylinux_2_28_x86_64.whl

Download URL taco_eo-0.11.0-py3-none-manylinux_2_28_x86_64.whl
Size 4.9 MB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
42feb7303418709538a9bbc4e5393dbb23fc16971feef821790fc416a9de9eb3
BLAKE2b-256 checksum
How to use checksums
376571a5c3f6c998d54a885839fc30899759db7cac3d0eb5c09d2dac057983f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / taco_eo-0.11.0-py3-none-manylinux_2_28_aarch64.whl

Download URL taco_eo-0.11.0-py3-none-manylinux_2_28_aarch64.whl
Size 5.0 MB
Tags Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
f40e29f8c353c449662e196f24d32a173863fcd93337286d111815abcdaf3020
BLAKE2b-256 checksum
How to use checksums
88b378845fc90de55be30a5d421b96e11f76503c3b156dc52eb85885a274caa0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / taco_eo-0.11.0-py3-none-macosx_11_0_x86_64.whl

Download URL taco_eo-0.11.0-py3-none-macosx_11_0_x86_64.whl
Size 3.9 MB
Tags Python 3 macOS 11.0+ x86-64
SHA-256 checksum
How to use checksums
d317982b0a36985dcf0cbc1241b12b605954ce10ceb1b5499f8cf0364e880c3e
BLAKE2b-256 checksum
How to use checksums
600e4fa8ace416917b2c1cdfb4c993e59efff6f509b151dc561794fbeca4c106
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release files / taco_eo-0.11.0-py3-none-macosx_11_0_arm64.whl

Download URL taco_eo-0.11.0-py3-none-macosx_11_0_arm64.whl
Size 4.0 MB
Tags Python 3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c74b195e33e3c61eb3efd4ee5b97bfb2993cf44c862d391a28b751003ad36bb1
BLAKE2b-256 checksum
How to use checksums
f117e0e848e7b7f434a084aa6c5c5215947ca23eb2bca9b38c795768c8edac01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.11.0 This release

6 release files

0.10.3

6 release files

0.10.2

6 release files

0.10.1

6 release files

0.10.0

6 release files

0.9.1

6 release files

0.9.0

6 release files

0.8.2

6 release files

0.8.1

6 release files

0.8.0

6 release files

0.7.0

6 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page