Metadata-Version: 2.4
Name: biotailor
Version: 0.1.1
Summary: Python SDK for the Biotailor bioinformatics pipeline platform
Author: Biotailor Team
License-Expression: MIT
Keywords: bioinformatics,biotailor,nextflow,pipeline
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Requires-Python: >=3.9
Requires-Dist: requests>=2.28.0
Requires-Dist: tqdm>=4.64.0
Provides-Extra: dev
Requires-Dist: pytest-mock>=3.10; extra == 'dev'
Requires-Dist: pytest>=7.0; extra == 'dev'
Requires-Dist: responses>=0.23; extra == 'dev'
Requires-Dist: ruff>=0.1.0; extra == 'dev'
Description-Content-Type: text/markdown

# biotailor

Python SDK for the [Biotailor](https://biotailor.com) bioinformatics pipeline platform.

## Installation

```bash
pip install biotailor
```

## Quickstart

```python
import os
from biotailor import BiotailorClient, Pipeline

# 1. Create a client with your API key (get one at https://biotailor.com)
client = BiotailorClient(
    api_key=os.environ["BIOTAILOR_API_KEY"],
    base_url="https://api.biotailor.org",
)

# 2. Pick a bioinformatics tool
fastp = client.get_tool("fastp")

# 3. Build a quality-control pipeline
pipeline = (
    Pipeline(name="demo-fastp", tool=fastp)
    .set_pair_end(False)
    .set_input("--in1", "examples/reads.fastq")
    .set_param("--qualified_quality_phred", 20)
    .set_param("--length_required", 30)
)

# 4. Run and wait for results
job = client.run_and_wait(pipeline, output_dir="outputs/")
print(f"Done! Status: {job.job_status.value}")
```

## Development

```bash
# Install in dev mode
pip install -e ".[dev]"

# Run tests
pytest tests/ -v

# Lint
ruff check src/ tests/
```
