[package]
edition = "2024"
rust-version = "1.96"
name = "elph-ai"
version = "0.0.21"
build = false
include = [
"Cargo.toml",
"src/**/*",
"bin/**/*",
"models/**/*.json",
"tests/data/**/*",
"examples/**/*",
]
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Unified LLM API with provider collections, auth resolution, and streaming"
homepage = "https://elph.space"
readme = "README.md"
keywords = [
"ai",
"llm",
"provider",
"api",
"elph",
]
categories = [
"api-bindings",
"development-tools",
]
license = "MIT"
repository = "https://github.com/riipandi/elph"
resolver = "2"
[lib]
name = "elph_ai"
path = "src/lib.rs"
[[bin]]
name = "generate-models"
path = "bin/generate_models/main.rs"
[[example]]
name = "opencode_big_pickle"
path = "examples/opencode_big_pickle.rs"
[dependencies.anyhow]
version = "1.0.103"
[dependencies.async-trait]
version = "0.1"
[dependencies.aws-config]
version = "1"
[dependencies.aws-sdk-bedrockruntime]
version = "1"
[dependencies.aws-smithy-runtime-api]
version = "1"
[dependencies.aws-smithy-types]
version = "1"
[dependencies.axum]
version = "0.8.8"
features = [
"http1",
"json",
"matched-path",
"tokio",
"query",
]
default-features = false
[dependencies.base64]
version = "0.22"
[dependencies.chrono]
version = "0.4"
features = [
"clock",
"std",
]
default-features = false
[dependencies.clap]
version = "4.5"
features = [
"color",
"derive",
"error-context",
"help",
"std",
"usage",
"derive",
"env",
]
default-features = false
[dependencies.eventsource-stream]
version = "0.2"
[dependencies.futures]
version = "0.3"
[dependencies.futures-util]
version = "0.3"
[dependencies.http]
version = "1"
[dependencies.image]
version = "0.25"
[dependencies.jsonschema]
version = "0.46.10"
[dependencies.lazy_static]
version = "1.5"
[dependencies.once_cell]
version = "1.21"
[dependencies.rand]
version = "0.10.2"
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.13.4"
features = [
"json",
"rustls",
"stream",
]
default-features = false
[dependencies.rustls]
version = "0.23"
features = [
"ring",
"std",
"tls12",
]
default-features = false
[dependencies.schemars]
version = "1.2.1"
[dependencies.serde]
version = "1.0.228"
features = [
"derive",
"std",
"derive",
]
default-features = false
[dependencies.serde_json]
version = "1.0.150"
features = ["std"]
default-features = false
[dependencies.sha2]
version = "0.11.0"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
version = "1"
features = [
"macros",
"rt",
"sync",
"time",
"rt-multi-thread",
"macros",
"net",
"io-util",
]
default-features = false
[dependencies.tokio-rustls]
version = "0.26"
[dependencies.tokio-tungstenite]
version = "0.29.0"
features = [
"connect",
"rustls-tls-webpki-roots",
]
default-features = false
[dependencies.tokio-util]
version = "0.7"
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2"
[dependencies.webpki-roots]
version = "1.0.8"
[dependencies.zstd]
version = "0.13"
[dev-dependencies.async-trait]
version = "0.1"
[dev-dependencies.indicatif]
version = "0.18.6"
features = ["unicode-width"]
default-features = false
[dev-dependencies.tokio]
version = "1"
features = [
"macros",
"rt",
"macros",
"rt-multi-thread",
]
default-features = false