feat: rework NodeJS SDK using napi (#847)

Use Napi to write a Node.js SDK that follows Polars for better
maintainability, while keeping most of the logic in Rust.
This commit is contained in:
Lei Xu
2024-01-23 15:14:45 -08:00
committed by Weston Pace
parent 7b8188bcd5
commit efcaa433fe
38 changed files with 8005 additions and 7 deletions

26
nodejs/Cargo.toml Normal file
View File

@@ -0,0 +1,26 @@
[package]
name = "vectordb-nodejs"
edition = "2021"
version = "0.0.0"
license.workspace = true
repository.workspace = true
[lib]
crate-type = ["cdylib"]
[dependencies]
arrow-ipc.workspace = true
napi = { version = "2.14", default-features = false, features = [
"napi7",
"async"
] }
napi-derive = "2.14"
vectordb = { path = "../rust/vectordb" }
lance.workspace = true
[build-dependencies]
napi-build = "2.1"
[profile.release]
lto = true
strip = "symbols"