[package]
edition = "2021"
name = "lm15"
version = "1.0.0-rc.7"
build = false
include = [
"src/**",
"examples/**",
"docs/**",
"Cargo.toml",
"README.md",
"LICENSE",
"CONTRACT_PIN",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "One request and response model for every LLM provider (OpenAI, Anthropic, Gemini, xAI, Groq, Bedrock, Azure, Vertex, local servers), with visible adaptations. Implements the lm15 contract."
homepage = "https://lm15.dev"
documentation = "https://docs.rs/lm15"
readme = "README.md"
keywords = [
"llm",
"openai",
"anthropic",
"gemini",
"ai",
]
categories = ["api-bindings"]
license = "MIT"
repository = "https://github.com/lm15-dev/lm15-rs"
[features]
blocking = [
"native",
"tokio/rt-multi-thread",
]
default = ["native"]
native = [
"dep:reqwest",
"dep:aws-lc-rs",
"dep:tokio-tungstenite",
"tokio/net",
"tokio/io-util",
"tokio/macros",
]
wasm = []
[lib]
name = "lm15"
crate-type = [
"rlib",
"cdylib",
]
path = "src/lib.rs"
[[bin]]
name = "lm15-vet"
path = "src/bin/lm15-vet.rs"
required-features = ["native"]
[[example]]
name = "bench_calls"
path = "examples/bench_calls.rs"
[[example]]
name = "live_session"
path = "examples/live_session.rs"
[[example]]
name = "live_smoke"
path = "examples/live_smoke.rs"
[[example]]
name = "playground"
path = "examples/playground.rs"
[[example]]
name = "surfaces_smoke"
path = "examples/surfaces_smoke.rs"
[dependencies.aws-lc-rs]
version = "1"
optional = true
[dependencies.bytes]
version = "1"
[dependencies.flate2]
version = "1.1.10"
features = ["rust_backend"]
default-features = false
[dependencies.futures-core]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
features = ["alloc"]
default-features = false
[dependencies.hmac]
version = "0.12"
[dependencies.httpdate]
version = "1"
[dependencies.log]
version = "0.4"
[dependencies.reqwest]
version = "0.13"
features = [
"rustls",
"http2",
"stream",
]
optional = true
default-features = false
[dependencies.serde]
version = "1"
[dependencies.serde_json]
version = "1"
features = [
"preserve_order",
"float_roundtrip",
]
[dependencies.sha2]
version = "0.10"
[dependencies.tokio]
version = "1"
features = [
"time",
"rt",
"sync",
]
[dependencies.tokio-tungstenite]
version = "0.30"
features = ["rustls-tls-native-roots"]
optional = true
[dev-dependencies.tokio]
version = "1"
features = [
"rt",
"rt-multi-thread",
"macros",
"net",
"io-util",
"test-util",
]
[dev-dependencies.tokio-tungstenite]
version = "0.30"
[profile.wasm]
opt-level = "s"
lto = "fat"
codegen-units = 1
inherits = "release"
strip = true