swiftide 0.24.0

Fast, streaming indexing, query, and agentic LLM applications in Rust
Documentation
[badges]

[dependencies.anyhow]
default-features = false
version = "1.0"

[dependencies.async-trait]
default-features = false
version = "0.1"

[dependencies.document-features]
version = "0.2"

[dependencies.serde]
default-features = false
features = ["derive"]
version = "1.0"

[dependencies.serde_json]
default-features = false
version = "1.0"

[dependencies.swiftide-agents]
optional = true
version = "0.24"

[dependencies.swiftide-core]
version = "0.24"

[dependencies.swiftide-indexing]
version = "0.24"

[dependencies.swiftide-integrations]
version = "0.24"

[dependencies.swiftide-query]
version = "0.24"

[dev-dependencies.anyhow]
default-features = false
version = "1.0"

[dev-dependencies.arrow-array]
default-features = false
version = "54.2"

[dev-dependencies.async-openai]
default-features = false
version = "0.28"

[dev-dependencies.lancedb]
default-features = false
features = ["remote"]
version = "0.18"

[dev-dependencies.mockall]
version = "0.13"

[dev-dependencies.qdrant-client]
default-features = false
features = ["serde", "serde"]
version = "1.13"

[dev-dependencies.serde]
default-features = false
features = ["derive"]
version = "1.0"

[dev-dependencies.serde_json]
default-features = false
version = "1.0"

[dev-dependencies.sqlx]
default-features = false
features = ["postgres", "uuid"]
version = "0.8"

[dev-dependencies.temp-dir]
version = "0.1"

[dev-dependencies.test-log]
version = "0.2"

[dev-dependencies.testcontainers]
features = ["http_wait"]
version = "0.23"

[dev-dependencies.tokio]
default-features = false
features = ["rt-multi-thread", "time"]
version = "1.44"

[dev-dependencies.wiremock]
version = "0.6"

[features]
all = ["qdrant", "redis", "tree-sitter", "openai", "fastembed", "scraping", "aws-bedrock", "groq", "ollama", "pgvector"]
anthropic = ["swiftide-integrations/anthropic"]
aws-bedrock = ["swiftide-integrations/aws-bedrock"]
dashscope = ["swiftide-integrations/dashscope"]
default = []
duckdb = ["swiftide-integrations/duckdb"]
fastembed = ["swiftide-integrations/fastembed"]
fluvio = ["swiftide-integrations/fluvio"]
groq = ["swiftide-integrations/groq"]
lancedb = ["swiftide-integrations/lancedb"]
mcp = ["swiftide-agents", "swiftide-agents/mcp"]
ollama = ["swiftide-integrations/ollama"]
open-router = ["swiftide-integrations/open-router"]
openai = ["swiftide-integrations/openai"]
parquet = ["swiftide-integrations/parquet"]
pgvector = ["swiftide-integrations/pgvector"]
qdrant = ["swiftide-integrations/qdrant", "swiftide-core/qdrant"]
redb = ["swiftide-integrations/redb"]
redis = ["swiftide-integrations/redis"]
scraping = ["swiftide-integrations/scraping"]
swiftide-agents = ["dep:swiftide-agents"]
test-utils = ["swiftide-core/test-utils"]
tree-sitter = ["swiftide-integrations/tree-sitter", "swiftide-indexing/tree-sitter"]

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

[lints.clippy]
blocks_in_conditions = "allow"
missing_fields_in_debug = "allow"
module_name_repetitions = "allow"
multiple_crate_versions = "allow"
must_use_candidate = "allow"

[lints.clippy.cargo]
level = "warn"
priority = -1

[lints.clippy.pedantic]
level = "warn"
priority = -1

[lints.rust]
unsafe_code = "forbid"

[lints.rust.unexpected_cfgs]
check-cfg = ["cfg(coverage,coverage_nightly)"]
level = "warn"
priority = 0

[package]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["asynchronous"]
description = "Fast, streaming indexing, query, and agentic LLM applications in Rust"
edition = "2021"
homepage = "https://swiftide.rs"
keywords = ["llm", "rag", "ai", "data", "openai"]
license = "MIT"
name = "swiftide"
readme = "README.md"
repository = "https://github.com/bosun-ai/swiftide"
version = "0.24.0"

[package.metadata.docs.rs]
all-features = true
cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
rustdoc-args = ["--cfg", "docsrs"]

[[test]]
name = "dyn_traits"
path = "tests/dyn_traits.rs"

[[test]]
name = "indexing_pipeline"
path = "tests/indexing_pipeline.rs"

[[test]]
name = "lancedb"
path = "tests/lancedb.rs"

[[test]]
name = "pgvector"
path = "tests/pgvector.rs"

[[test]]
name = "query_pipeline"
path = "tests/query_pipeline.rs"

[[test]]
name = "sparse_embeddings_and_hybrid_search"
path = "tests/sparse_embeddings_and_hybrid_search.rs"