Metadata-Version: 2.4
Name: timenet
Version: 0.11.0
Summary: TimeNet is infrastructure for registering, querying, downloading, converting, and exploring time series datasets in a shared TimeF format.
Keywords: time-series,datasets,timef,machine-learning
Author: The TimeNet authors
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Operating System :: OS Independent
Classifier: Typing :: Typed
Requires-Dist: duckdb>=1.5,<1.6
Requires-Dist: httpx>=0.28
Requires-Dist: jaxtyping>=0.3
Requires-Dist: numpy>=2.1
Requires-Dist: pint>=0.25
Requires-Dist: pyarrow>=21
Requires-Dist: pydantic-settings>=2.4
Requires-Dist: timenet[cli,torch,build,zarr,s3] ; extra == 'all'
Requires-Dist: pyyaml>=6 ; extra == 'build'
Requires-Dist: jsonschema>=4.18 ; extra == 'build'
Requires-Dist: uv>=0.10.10 ; extra == 'build'
Requires-Dist: typer>=0.12 ; extra == 'cli'
Requires-Dist: rich>=13 ; extra == 'cli'
Requires-Dist: boto3>=1.34 ; extra == 's3'
Requires-Dist: torch>=2.2 ; extra == 'torch'
Requires-Dist: zarr>=3 ; extra == 'zarr'
Requires-Python: >=3.11
Project-URL: Homepage, https://timenet.ai
Project-URL: Documentation, https://docs.timenet.ai/
Project-URL: Repository, https://github.com/OpenTSLM/TimeNet
Project-URL: Issues, https://github.com/OpenTSLM/TimeNet/issues
Provides-Extra: all
Provides-Extra: build
Provides-Extra: cli
Provides-Extra: s3
Provides-Extra: torch
Provides-Extra: zarr
Description-Content-Type: text/markdown

# TimeNet

*Find, build, and load time-series datasets through one shared format.*

> [!NOTE]
> TimeNet is a pre-release project. Its public API and the TimeF format can change before 1.0.

[![PyPI](https://img.shields.io/pypi/v/timenet)](https://pypi.org/project/timenet/)
[![Docs](https://img.shields.io/badge/docs-docs.timenet.ai-1f6feb)](https://docs.timenet.ai/)
[![License: MIT](https://img.shields.io/badge/license-MIT-green)](https://github.com/OpenTSLM/TimeNet/blob/main/LICENSE)

Time-series datasets use many incompatible layouts. TimeF gives them one storage format. TimeNet
provides one API to find, build, download, and load them.

TimeNet handles the data layer. Model training, inference, and evaluation stay in your chosen
framework.

## Quick start

TimeNet needs Python 3.11 or newer.

```bash
uv add 'timenet[cli]'
uv tool install timenet-connectors
timenet-build build timenet/hello-world --out .timenet-registry
```

Load the local build with Python:

```python
from timenet.client import TimeNet

dataset = TimeNet(".timenet-registry").load("timenet/hello-world")
dataset.describe()

signal = dataset.records[0].signals[0]
values = signal.to_numpy()
```

This example uses a local registry, so it works without registry credentials or network access.

See the [Get started guide](https://docs.timenet.ai/get-started.html) for installation options and a
longer example.

## How it fits together

![TimeNet architecture diagram](https://raw.githubusercontent.com/OpenTSLM/TimeNet/main/docs/assets/architecture.svg)

A connector converts a raw source into a TimeF version. The version contains:

- `manifest.json`, which identifies the dataset and lists its files
- `control.duckdb`, which stores the hierarchy and relationships
- a Parquet or Zarr values plane, which stores Signal values

A registry stores immutable TimeF versions. The client reads a version without importing its
connector.

The repository is a [uv](https://docs.astral.sh/uv/) workspace with two packages:

| Package | Purpose |
| --- | --- |
| `timenet` | The TimeF model, reader, writer, registries, SDK, and consumer CLI. |
| `timenet-connectors` | Dataset connectors and the `timenet-build` producer CLI. |

Read the [architecture guide](https://docs.timenet.ai/architecture.html) for the complete design.

## License

TimeNet uses the [MIT License](https://github.com/OpenTSLM/TimeNet/blob/main/LICENSE).

This license covers the TimeNet code, not the datasets that connectors fetch. Each dataset keeps
its upstream license and access terms. Read the
[dataset licensing guide](https://docs.timenet.ai/catalog/licensing.html) before redistribution.
