mirror of
https://github.com/lancedb/lancedb.git
synced 2025-12-27 07:09:57 +00:00
* Refactors the Node module to load the shared library from a separate package. When a user does `npm install vectordb`, the correct optional dependency is automatically downloaded by npm. * Add scripts and instructions to build Linux and MacOS node artifacts locally. * Add instructions for publishing the npm module and crates. Co-authored-by: Will Jones <willjones127@gmail.com>
LanceDB
A JavaScript / Node.js library for LanceDB.
Installation
npm install vectordb
This will download the appropriate native library for your platform. We currently support x86_64 Linux, aarch64 Linux, Intel MacOS, and ARM (M1/M2) MacOS. We do not yet support Windows or musl-based Linux (such as Alpine Linux).
Usage
Basic Example
const lancedb = require('vectordb');
const db = lancedb.connect('<PATH_TO_LANCEDB_DATASET>');
const table = await db.openTable('my_table');
const query = await table.search([0.1, 0.3]).setLimit(20).execute();
console.log(results);
The examples folder contains complete examples.
Development
To build everything fresh:
npm install
npm run tsc
npm run build
Then you should be able to run the tests with:
npm test
Rebuilding Rust library
npm run build
Rebuilding Typescript
npm run tsc
Fix lints
To run the linter and have it automatically fix all errors
npm run lint -- --fix
To build documentation
npx typedoc --plugin typedoc-plugin-markdown --out ../docs/src/javascript src/index.ts