[workspace]
resolver = "2"
members = [
"crates/graphify-core",
"crates/graphify-detect",
"crates/graphify-extract",
"crates/graphify-build",
"crates/graphify-cluster",
"crates/graphify-analyze",
"crates/graphify-export",
"crates/graphify-cache",
"crates/graphify-security",
"crates/graphify-ingest",
"crates/graphify-serve",
"crates/graphify-watch",
"crates/graphify-hooks",
"crates/graphify-benchmark",
]
[workspace.package]
version = "0.4.4"
edition = "2024"
authors = ["TtTRz <romc1224@gmail.com>"]
license = "MIT"
rust-version = "1.85"
repository = "https://github.com/TtTRz/graphify-rs"
[workspace.dependencies]
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tokio = { version = "1", features = ["rt-multi-thread", "fs", "net", "io-util", "macros", "sync", "time"] }
reqwest = { version = "0.12", features = ["json"] }
petgraph = { version = "0.6", features = ["serde-1"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
anyhow = "1.0"
thiserror = "2"
regex = "1"
sha2 = "0.10"
clap = { version = "4", features = ["derive"] }
clap_complete = "4"
graphify-core = { path = "crates/graphify-core", version = "0.4.4" }
graphify-detect = { path = "crates/graphify-detect", version = "0.4.4" }
graphify-extract = { path = "crates/graphify-extract", version = "0.4.4" }
graphify-build = { path = "crates/graphify-build", version = "0.4.4" }
graphify-cluster = { path = "crates/graphify-cluster", version = "0.4.4" }
graphify-analyze = { path = "crates/graphify-analyze", version = "0.4.4" }
graphify-export = { path = "crates/graphify-export", version = "0.4.4" }
graphify-cache = { path = "crates/graphify-cache", version = "0.4.4" }
graphify-security = { path = "crates/graphify-security", version = "0.4.4" }
graphify-ingest = { path = "crates/graphify-ingest", version = "0.4.4" }
graphify-serve = { path = "crates/graphify-serve", version = "0.4.4" }
graphify-watch = { path = "crates/graphify-watch", version = "0.4.4" }
graphify-hooks = { path = "crates/graphify-hooks", version = "0.4.4" }
graphify-benchmark = { path = "crates/graphify-benchmark", version = "0.4.4" }
[package]
name = "graphify-rs"
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
description = "AI-powered knowledge graph builder - transform code, docs, papers into queryable graphs"
repository = "https://github.com/TtTRz/graphify-rs"
homepage = "https://github.com/TtTRz/graphify-rs"
readme = "README.md"
keywords = ["knowledge-graph", "code-analysis", "ast", "tree-sitter", "mcp"]
categories = ["command-line-utilities", "development-tools"]
exclude = [
".github/",
"tests/",
"graphify-out/",
"graphify.toml",
"README_CN.md",
"AUDIT_*.md",
]
[[bin]]
name = "graphify-rs"
path = "src/main.rs"
[dependencies]
graphify-core.workspace = true
graphify-detect.workspace = true
graphify-extract.workspace = true
graphify-build.workspace = true
graphify-cluster.workspace = true
graphify-analyze.workspace = true
graphify-export.workspace = true
graphify-cache.workspace = true
graphify-security.workspace = true
graphify-ingest.workspace = true
graphify-serve.workspace = true
graphify-watch.workspace = true
graphify-hooks.workspace = true
graphify-benchmark.workspace = true
clap.workspace = true
tokio.workspace = true
tracing-subscriber.workspace = true
anyhow.workspace = true
serde.workspace = true
serde_json.workspace = true
dirs = "5"
indicatif = "0.17"
colored = "2"
clap_complete.workspace = true
toml = "0.8"
rayon = "1"
[dev-dependencies]
tempfile = "3"
criterion = { version = "0.5", features = ["html_reports"] }
[[bench]]
name = "graphify_bench"
harness = false
[[test]]
name = "test_python_compat"
path = "tests/integration/test_python_compat.rs"
[[test]]
name = "test_e2e"
path = "tests/integration/test_e2e.rs"