[package] name = "rvlite" version = "0.3.0" edition = "2021" description = "Standalone vector database with SQL, SPARQL, and Cypher - powered by RuVector WASM" license = "MIT OR Apache-2.0" repository = "https://github.com/ruvnet/ruvector" authors = ["RuVector Contributors"] [lib] crate-type = ["cdylib", "rlib"] [dependencies] # ===== 100% REUSE - Existing WASM Crates ===== ruvector-core = { version = "2.0.1", path = "../ruvector-core", default-features = false, features = ["memory-only"] } # Note: ruvector-wasm, ruvector-graph-wasm, ruvector-gnn-wasm will be added after validating they exist # Optional features (to be enabled after basic integration works) # sona = { path = "../sona", features = ["wasm"], optional = true } # micro-hnsw-wasm = { path = "../micro-hnsw-wasm", optional = true } # ===== NEW - SQL Engine (to be added later) ===== # sqlparser = { version = "0.49", optional = true } # ===== WASM Bindings ===== wasm-bindgen = "0.2" wasm-bindgen-futures = "0.4" js-sys = "0.3" web-sys = { version = "0.3", features = [ "console", "Window", "Event", "EventTarget", "DomException", "DomStringList", "IdbDatabase", "IdbFactory", "IdbObjectStore", "IdbObjectStoreParameters", "IdbTransaction", "IdbTransactionMode", "IdbRequest", "IdbOpenDbRequest", "IdbKeyRange", "IdbCursorDirection", ] } serde-wasm-bindgen = "0.6" console_error_panic_hook = "0.1" # ===== RVF Backend (optional) ===== rvf-runtime = { path = "../rvf/rvf-runtime", features = ["std"], optional = true } rvf-types = { path = "../rvf/rvf-types", features = ["std"], optional = true } fs2 = { version = "0.4", optional = true } # ===== Standard Dependencies ===== serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" thiserror = "1.0" anyhow = "1.0" parking_lot = "0.12" once_cell = "1.19" [dev-dependencies] wasm-bindgen-test = "0.3" # Ensure getrandom uses js feature for WASM # Note: We use a direct dependency instead of workspace to specify version [target.'cfg(target_arch = "wasm32")'.dependencies] getrandom = { version = "0.2", features = ["js"] } [features] default = [] rvf-backend = ["dep:rvf-runtime", "dep:rvf-types", "dep:fs2"] # Feature flags to be added later # sql = ["dep:sqlparser"] # sparql = [] # cypher = [] # gnn = [] # learning = ["dep:sona"] # full = ["sql", "sparql", "cypher", "gnn", "learning"] [profile.release] opt-level = "z" # Optimize for size lto = true # Link-time optimization codegen-units = 1 # Single codegen unit (better optimization) panic = "abort" # No unwinding (saves space) strip = true # Strip debug symbols [profile.release.package."*"] opt-level = "z" # Apply to all dependencies [package.metadata.wasm-pack.profile.release] wasm-opt = false # Disabled temporarily due to validation error