[package]
name = "artificial"
version = "0.4.2"
edition = "2024"
description = "Typed, provider-agnostic prompt-engineering SDK for Rust"
authors = ["Marc Riegel <mail@mrcrgl.de>"]
license = "MIT"
readme = "../../README.md"
repository = "https://github.com/mrcrgl/artificial-rs"
categories = ["api-bindings", "development-tools", "text-processing"]
keywords = ["ai", "openai", "prompt-engineering", "json-schema", "typed"]

[features]
default = ["openai"]
openai = ["dep:artificial-openai"]

[dependencies]
artificial-types = { path = "../artificial-types", version = "0.4.2" }
artificial-openai = { path = "../artificial-openai", optional = true, version = "0.4.2" }
artificial-core = { path = "../artificial-core", version = "0.4.2" }
artificial-prompt = { path = "../artificial-prompt", version = "0.4.2" }

[dev-dependencies]
tokio = { version = "1", features = ["full"] }
anyhow = "1"
serde.workspace = true
schemars.workspace = true
serde_yaml = "0.9.34"
serde_json.workspace = true
futures-util = "0.3"
