synthclaw 0.1.3

Lightweight synthetic data generation library/CLI.
Documentation
[package]
name = "synthclaw"
version = "0.1.3"
edition = "2021"
rust-version = "1.75"
description = "Lightweight synthetic data generation library/CLI."
license = "MIT"
repository = "https://github.com/semioz/synthclaw"
readme = "README.md"
keywords = ["synthetic-data", "llm", "data-generation", "huggingface"]
categories = ["command-line-utilities", "data-structures"]

[features]
default = ["cli"]
cli = ["dep:clap", "dep:indicatif", "dep:console", "dep:tracing-subscriber"]

[dependencies]
# CLI (optional)
clap = { version = "4", features = ["derive"], optional = true }
indicatif = { version = "0.17", optional = true }
console = { version = "0.15", optional = true }
tracing-subscriber = { version = "0.3", features = ["env-filter"], optional = true }

# Async runtime
tokio = { version = "1", features = ["full"] }

# HTTP & API clients
reqwest = { version = "0.12", features = ["json", "stream", "blocking"] }

# Data handling
polars = { version = "0.46", features = ["parquet", "lazy", "csv", "json"] }
hf-hub = "0.4"
csv = "1"

# Config & serialization
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
regex = "1"

# Error handling
thiserror = "2"
anyhow = "1"

# Async utilities
futures = "0.3"
tokio-stream = "0.1"
async-trait = "0.1"

# Logging
tracing = "0.1"
base64 = "0.22"

[[bin]]
name = "synthclaw"
path = "src/main.rs"
required-features = ["cli"]

[lib]
name = "synth_claw"
path = "src/lib.rs"

[dev-dependencies]
tempfile = "3"
assert_cmd = "2"
predicates = "3"