[workspace]
resolver = "2"
members = [
"derive",
]
[workspace.package]
edition = "2024"
authors = ["Lexo Liu <me@lexo.cool>"]
license = "MIT"
repository = "https://github.com/lexoliu/aither"
rust-version = "1.85"
[workspace.lints]
rust.missing_docs = "warn"
rust.missing_debug_implementations = "warn"
clippy.all = "warn"
clippy.style = "warn"
clippy.correctness = "warn"
clippy.complexity = "warn"
clippy.suspicious = "warn"
clippy.perf = "warn"
clippy.pedantic = "warn"
clippy.nursery = "warn"
clippy.cargo = "warn"
[workspace.dependencies]
aither = { path = "."}
aither-derive = { path = "./derive", version = "0.1.0"}
[package]
name = "aither"
version = "0.2.0"
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true
rust-version.workspace = true
description = "Providing unified trait abstractions for AI models"
documentation = "https://docs.rs/aither"
keywords = ["ai", "llm", "embedding", "image-generation", "no-std"]
categories = ["api-bindings", "no-std"]
readme = "./README.md"
exclude = [
".github/",
".gitignore",
"target/",
]
[badges]
maintenance = { status = "actively-developed" }
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
aither-derive = { workspace = true, optional = true}
anyhow = { version = "1.0", default-features = false }
async-stream = "0.3.6"
futures-core = { version = "0.3.31", default-features = false}
futures-lite = { version = "2.6"}
pin-project-lite = "0.2.16"
schemars = { version = "1.0", default-features = false}
serde = { version = "1.0", default-features = false}
serde_json = { version = "1.0", default-features = false }
url = { version = "2.5", default-features = false }
[dev-dependencies]
tokio = { version = "1.0", features = ["macros", "rt", "rt-multi-thread"] }
tokio-test = "0.4"
schemars = { version = "1.0" }
serde = { version = "1.0", features = ["derive"] }
futures-lite = { version = "2.6"}
[features]
default = ["derive", "serde"]
serde = ["serde/derive","url/serde"]
derive = ["aither-derive"]
[lints]
workspace = true