An open API service indexing awesome lists of open source software.

https://github.com/tilebox/tilebox-python

Python library for Tilebox - a framework for space data management and workflow orchestration.
https://github.com/tilebox/tilebox-python

data-science distributed-computing python satellite-data space space-data-pipeline space-data-science tilebox workflow workflow-orchestration

Last synced: 5 months ago
JSON representation

Python library for Tilebox - a framework for space data management and workflow orchestration.

Awesome Lists containing this project

README

          


Tilebox Logo




PyPi Latest Release badge


Required Python Version badge


MIT License


Build Status


Join us on Discord


Documentation
|
Console
|
Example Gallery

# Tilebox Python

Python library for [Tilebox](https://tilebox.com), a lightweight space data management and orchestration software - on ground and in orbit.

## Install

```bash
pip install tilebox
```

> [!TIP]
> For new projects we recommend using [uv](https://docs.astral.sh/uv/) - `uv add tilebox`. Additional installation options are available [in our docs](https://docs.tilebox.com/sdks/python/install).

## Documentation

Documentation is available at [docs.tilebox.com](https://docs.tilebox.com).

## Getting started

### Tilebox Datasets

Structured and high-performance satellite metadata storage, indexing and querying. [See documentation](https://docs.tilebox.com/datasets/introduction)

```python
from tilebox.datasets import Client
from shapely.geometry import shape

# create your API key at https://console.tilebox.com
client = Client(token="YOUR_TILEBOX_API_KEY")
datasets = client.datasets()
print(datasets)

sentinel2_msi = client.dataset("open_data.copernicus.sentinel2_msi")
collections = sentinel2_msi.collections()
print(collections)

area_of_interest = shape({
"type": "Polygon", # coords in lon, lat
"coordinates": [[[-5, 50], [-5, 56], [-11, 56], [-11, 50], [-5, 50]]]}
)
s2a_l1c = sentinel2_msi.collection("S2A_S2MSI1C")
results = s2a_l1c.query(
temporal_extent=("2025-03-01", "2025-06-01"),
spatial_extent=area_of_interest,
show_progress=True
)
print(f"Found {results.sizes['time']} datapoints") # Found 979 datapoints
```

### Tilebox Workflows

A parallel processing engine to simplify the creation of dynamic tasks that can be executed across various computing environments, including on-premise and auto-scaling clusters in public clouds.

```python
from tilebox.workflows import Client, Task

class MyFirstTask(Task):
def execute(self):
print("Hello World from my first Tilebox task!")

# create your API key at https://console.tilebox.com
client = Client(token="YOUR_TILEBOX_API_KEY")

# submit a job
jobs = client.jobs()
jobs.submit("my-very-first-job", MyFirstTask())

# and run it
runner = client.runner(tasks=[MyFirstTask])
runner.run_all()
```

## Contributing

Contributions are welcome! Please see the [contributing guide](https://github.com/tilebox/tilebox-python/blob/main/CONTRIBUTING.md) for more information.

You can also join us on [Discord](https://tilebox.com/discord) if you have any questions or want to share your ideas.

## License

Distributed under the MIT License (`The MIT License`).