Files
lancedb/nodejs
Daniel RammerandClaude Opus 4.8 6633f83f7b feat: add get_lsm_write_spec to read the installed LSM write spec
Adds `Table::get_lsm_write_spec` returning `Option<LsmWriteSpec>`, the read
counterpart to `set_lsm_write_spec` / `unset_lsm_write_spec`.

- Rust core: `NativeTable` reconstructs the spec from the MemWAL index
  details (`mem_wal_index_details`), resolving the shard column via the
  dataset schema. Read-only, so unaffected by describe_indices filtering.
- Remote: `RemoteTable` reads the `__lance_mem_wal` system index via
  `index/list` with `include_system: true` (kept out of the curated
  `list_indices` surface) and parses its `details` JSON, using the
  server-resolved `column` name.
- Python and TypeScript bindings, sync + async, with round-trip tests.

The remote path depends on lance emitting the resolved shard column name in
the MemWAL index details JSON, and on the server honoring `include_system`
on `index/list`.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-07 14:45:33 -05:00
..
2025-03-21 10:56:29 -07:00
2025-01-29 08:27:07 -08:00

LanceDB JavaScript SDK

A JavaScript library for LanceDB.

Installation

npm install @lancedb/lancedb

This will download the appropriate native library for your platform. We currently support:

  • Linux (x86_64 and aarch64 on glibc and musl)
  • MacOS (Intel and ARM/M1/M2)
  • Windows (x86_64 and aarch64)

Usage

Basic Example

import * as lancedb from "@lancedb/lancedb";
const db = await lancedb.connect("data/sample-lancedb");
const table = await db.createTable("my_table", [
  { id: 1, vector: [0.1, 1.0], item: "foo", price: 10.0 },
  { id: 2, vector: [3.9, 0.5], item: "bar", price: 20.0 },
]);
const results = await table.vectorSearch([0.1, 0.3]).limit(20).toArray();
console.log(results);

The quickstart contains more complete examples.

Development

See CONTRIBUTING.md for information on how to contribute to LanceDB.