Metadata-Version: 2.4
Name: adapt-core
Version: 0.0.1
Summary: Adaptive Data Pipeline Toolkit - core runtime for `kind: source` configurations
Author: Karthick Jaganathan
License-Expression: Apache-2.0
Project-URL: Homepage, https://github.com/karthick-jaganathan/ADaPT-ETL
Project-URL: Repository, https://github.com/karthick-jaganathan/ADaPT-ETL
Keywords: data,pipeline,etl,connector,singer,yaml
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pyyaml==6.0.2
Requires-Dist: requests<3,>=2.25
Requires-Dist: duckdb>=1.5.2
Requires-Dist: pytz
Provides-Extra: dlt
Requires-Dist: dlt>=1.0; extra == "dlt"
Dynamic: license-file

# adapt-core — the `adapt` CLI and runtime for `kind: source`

adapt-core is the `adapt` command — `adapt run` runs a source, `adapt validate` checks it, `adapt connectors` lists the
installed connectors — and the runtime behind it for `kind: source` sources: a source folder (`source.yaml` with
`spec`, `auth` and `http`, and one file per stream in `streams/`) or a single YAML file, with HTTP requests, SDK
[connectors](../connectors/README.md), sandboxed DuckDB SQL steps, and outputs to files, DuckDB/DuckLake or dlt.

## Install

```bash
make install            # from the repository root; or: cd adapt-core && make install MODE=dev
adapt --help
```

## Quickstart

```bash
pip install ./connectors/readers/files        # from the repository root
adapt validate examples
adapt run examples/sources/readers/files_demo --set data_root=examples/sources/readers/files_demo/data --allow-connector files --output jsonl:out
```

📖 Full documentation: https://karthick-jaganathan.github.io/ADaPT-ETL/adapt-core/ — command line, streams, outputs,
logging, connectors & readers and the Python API.

- [Architecture guide](https://karthick-jaganathan.github.io/ADaPT-ETL/architecture/) — how adapt-core, the connectors
  and orchestration fit together.
- [Source format design](https://karthick-jaganathan.github.io/ADaPT-ETL/design/source-format/) — the full
  `source.yaml` + `streams/` reference.
