[package]
edition = "2024"
rust-version = "1.88"
name = "project-rag"
version = "0.1.0"
authors = ["Brainwires"]
build = "build.rs"
exclude = [
".github/",
".cache/",
"docs/adr/",
"CLAUDE.md",
"CONTRIBUTING.md",
"TESTING.md",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "RAG-based codebase indexing and semantic search - dual purpose library and MCP server"
homepage = "https://github.com/Brainwires/project-rag"
documentation = "https://docs.rs/project-rag"
readme = "README.md"
keywords = [
"mcp",
"rag",
"embeddings",
"semantic-search",
"code-analysis",
]
categories = [
"command-line-utilities",
"development-tools",
]
license = "MIT"
repository = "https://github.com/Brainwires/project-rag"
[features]
alt-folder-name = []
default = ["lancedb-backend"]
lancedb-backend = []
qdrant-backend = ["qdrant-client"]
stack-graphs = []
[lib]
name = "project_rag"
path = "src/lib.rs"
[[bin]]
name = "project-rag"
path = "src/main.rs"
[[example]]
name = "advanced_search"
path = "examples/advanced_search.rs"
[[example]]
name = "basic_indexing"
path = "examples/basic_indexing.rs"
[[example]]
name = "mcp_client"
path = "examples/mcp_client.rs"
[[example]]
name = "test_git_search"
path = "examples/test_git_search.rs"
[[test]]
name = "git_search_integration"
path = "tests/git_search_integration.rs"
[[test]]
name = "simple_integration"
path = "tests/simple_integration.rs"
[[bench]]
name = "indexing_benchmark"
path = "benches/indexing_benchmark.rs"
harness = false
[dependencies.anyhow]
version = "1.0"
[dependencies.arrow-array]
version = "56.2"
[dependencies.arrow-schema]
version = "56.2"
[dependencies.async-trait]
version = "0.1"
[dependencies.chrono]
version = "0.4"
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
[dependencies.dirs]
version = "5.0"
[dependencies.fastembed]
version = "5.1"
[dependencies.fs2]
version = "0.4"
[dependencies.futures]
version = "0.3"
[dependencies.git2]
version = "0.19"
[dependencies.globset]
version = "0.4"
[dependencies.ignore]
version = "0.4"
[dependencies.lancedb]
version = "0.23"
[dependencies.pdf-extract]
version = "0.7"
[dependencies.qdrant-client]
version = "1.15"
optional = true
[dependencies.rayon]
version = "1.10"
[dependencies.regex]
version = "1.10"
[dependencies.rmcp]
version = "0.8"
features = [
"server",
"transport-io",
"macros",
]
[dependencies.schemars]
version = "1.0"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.10"
[dependencies.tantivy]
version = "0.22"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.43"
features = ["full"]
[dependencies.tokio-util]
version = "0.7"
[dependencies.toml]
version = "0.8"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
[dependencies.tree-sitter]
version = "0.25"
[dependencies.tree-sitter-c]
version = "0.24"
[dependencies.tree-sitter-c-sharp]
version = "0.23"
[dependencies.tree-sitter-cpp]
version = "0.23"
[dependencies.tree-sitter-go]
version = "0.23"
[dependencies.tree-sitter-java]
version = "0.23"
[dependencies.tree-sitter-javascript]
version = "0.23"
[dependencies.tree-sitter-php]
version = "0.24"
[dependencies.tree-sitter-python]
version = "0.23"
[dependencies.tree-sitter-ruby]
version = "0.23"
[dependencies.tree-sitter-rust]
version = "0.23"
[dependencies.tree-sitter-swift]
version = "0.7"
[dependencies.tree-sitter-typescript]
version = "0.23"
[dependencies.walkdir]
version = "2.5"
[dev-dependencies.criterion]
version = "0.5"
features = ["async_tokio"]
[dev-dependencies.filetime]
version = "0.2"
[dev-dependencies.tempfile]
version = "3.0"
[build-dependencies.chrono]
version = "0.4"