{"_id":"@apache-arrow/adbc-driver-manager","_rev":"2-536bce8d1a2f4ccdd6c58b590e0acf5e","name":"@apache-arrow/adbc-driver-manager","dist-tags":{"latest":"0.24.0"},"versions":{"0.23.0":{"name":"@apache-arrow/adbc-driver-manager","version":"0.23.0","keywords":["adbc","arrow","database","arrow-adbc"],"license":"Apache-2.0","_id":"@apache-arrow/adbc-driver-manager@0.23.0","maintainers":[{"name":"ptaylor","email":"paul.e.taylor@me.com"},{"name":"wesm","email":"wesmckinn+npm@gmail.com"},{"name":"xhochy","email":"uwelk@xhochy.com"},{"name":"kou","email":"kou@cozmixng.org"},{"name":"kszucs","email":"szucs.krisztian@gmail.com"},{"name":"jorgecarleitao","email":"jorgecarleitao@gmail.com"},{"name":"raulcd","email":"raulcumplido@gmail.com"},{"name":"amoeba","email":"petridish@gmail.com"},{"name":"li.davidm","email":"npm@lidavidm.me"}],"homepage":"https://github.com/apache/arrow-adbc#readme","bugs":{"url":"https://github.com/apache/arrow-adbc/issues"},"dist":{"shasum":"1accd15860f88bcaa5d16ceba66039897e2af4b4","tarball":"https://registry.npmjs.org/@apache-arrow/adbc-driver-manager/-/adbc-driver-manager-0.23.0.tgz","fileCount":12,"integrity":"sha512-15epeGLffkpukklpVDg8QYVhOJrKvoll1FWovW7yivBcdgjWLiji7moV0fEMAd86x+aMDM72sWdlTQ1x7fjB/Q==","signatures":[{"sig":"MEUCICeYX1dzQzjSQWRGehrcxMaTmWNAdh+S/eJLu65hf7xSAiEAvNDTt1Dme1Ww22+8jTa4Sz61yAlOvV0woi1CRcS/dZQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":102270},"main":"dist/index.js","napi":{"targets":["x86_64-pc-windows-msvc","x86_64-apple-darwin","x86_64-unknown-linux-gnu","aarch64-unknown-linux-gnu","aarch64-apple-darwin"],"binaryName":"adbc-driver-manager"},"type":"module","_from":"file:/tmp/arrow-post-npm.u8nx0/apache-arrow-adbc-driver-manager-0.23.0.tgz","types":"dist/index.d.ts","engines":{"node":">=22.0.0"},"scripts":{"fix":"prettier . -w && oxlint . --fix","test":"tsx --test __test__/*.spec.ts","build":"napi build --platform --release --esm && mv index.js binding.js && mv index.d.ts binding.d.ts && tsc","check":"npm run check:js && npm run check:rust","prepare":"husky","version":"napi version","build:ci":"napi build --platform --release --esm --js binding.js --dts binding.d.ts","build:ts":"tsc","check:js":"prettier --check . && oxlint . && tsc --noEmit","artifacts":"napi artifacts","check:rust":"cargo fmt -- --check && cargo clippy -- -D warnings","preversion":"napi build --platform --esm && git add .","build:debug":"napi build --platform --esm && mv index.js binding.js && mv index.d.ts binding.d.ts && tsc","build:driver":"../ci/scripts/node_build.sh $(pwd)/build"},"_npmUser":{"name":"li.davidm","email":"npm@lidavidm.me"},"prettier":{"semi":false,"printWidth":120,"arrowParens":"always","singleQuote":true,"trailingComma":"all"},"_resolved":"/tmp/arrow-post-npm.u8nx0/apache-arrow-adbc-driver-manager-0.23.0.tgz","_integrity":"sha512-15epeGLffkpukklpVDg8QYVhOJrKvoll1FWovW7yivBcdgjWLiji7moV0fEMAd86x+aMDM72sWdlTQ1x7fjB/Q==","repository":{"url":"git+https://github.com/apache/arrow-adbc.git","type":"git","directory":"javascript"},"_npmVersion":"11.6.1","description":"Node.js ADBC Driver Manager","directories":{},"lint-staged":{"*.toml":["taplo format"],"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"]},"_nodeVersion":"24.10.0","_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.0.0","husky":"^9.1.7","oxlint":"^1.14.0","prettier":"^3.6.2","@taplo/cli":"^0.7.0","typescript":"^5.9.2","lint-staged":"^16.1.6","@napi-rs/cli":"^3.2.0"},"peerDependencies":{"apache-arrow":"^21.1.0"},"optionalDependencies":{"@apache-arrow/adbc-driver-manager-darwin-x64":"0.23.0","@apache-arrow/adbc-driver-manager-darwin-arm64":"0.23.0","@apache-arrow/adbc-driver-manager-linux-x64-gnu":"0.23.0","@apache-arrow/adbc-driver-manager-win32-x64-msvc":"0.23.0","@apache-arrow/adbc-driver-manager-linux-arm64-gnu":"0.23.0"},"_npmOperationalInternal":{"tmp":"tmp/adbc-driver-manager_0.23.0_1775609191765_0.4455936238482454","host":"s3://npm-registry-packages-npm-production"}},"0.24.0":{"name":"@apache-arrow/adbc-driver-manager","version":"0.24.0","description":"Node.js ADBC Driver Manager","main":"dist/index.js","types":"dist/index.d.ts","repository":{"type":"git","url":"git+https://github.com/apache/arrow-adbc.git","directory":"javascript"},"type":"module","license":"Apache-2.0","keywords":["adbc","arrow","database","arrow-adbc"],"napi":{"binaryName":"adbc-driver-manager","targets":["x86_64-pc-windows-msvc","x86_64-apple-darwin","x86_64-unknown-linux-gnu","aarch64-unknown-linux-gnu","aarch64-apple-darwin"]},"engines":{"node":">=22.0.0"},"scripts":{"artifacts":"napi artifacts","build":"napi build --platform --release --esm && mv index.js binding.js && mv index.d.ts binding.d.ts && tsc","build:ci":"napi build --platform --release --esm --js binding.js --dts binding.d.ts","build:debug":"napi build --platform --esm && mv index.js binding.js && mv index.d.ts binding.d.ts && tsc","build:ts":"tsc","build:driver":"../ci/scripts/node_build.sh $(pwd)/build","fix":"prettier . -w && oxlint . --fix","check":"npm run check:js && npm run check:rust","check:js":"prettier --check . && oxlint . && tsc --noEmit","check:rust":"cargo fmt -- --check && cargo clippy -- -D warnings","docs":"typedoc","test":"tsx --test __test__/*.spec.ts","preversion":"napi build --platform --esm && git add .","version":"napi version","prepare":"husky"},"devDependencies":{"@napi-rs/cli":"^3.2.0","typedoc":"^0.28.0","@taplo/cli":"^0.7.0","tsx":"^4.0.0","husky":"^9.1.7","lint-staged":"^16.1.6","oxlint":"^1.14.0","prettier":"^3.6.2","typescript":"^5.9.2"},"lint-staged":{"*.@(js|ts|tsx)":["oxlint --fix"],"*.@(js|ts|tsx|yml|yaml|md|json)":["prettier --write"],"*.toml":["taplo format"]},"prettier":{"printWidth":120,"semi":false,"trailingComma":"all","singleQuote":true,"arrowParens":"always"},"peerDependencies":{"apache-arrow":"^21.1.0"},"optionalDependencies":{"@apache-arrow/adbc-driver-manager-win32-x64-msvc":"0.24.0","@apache-arrow/adbc-driver-manager-darwin-x64":"0.24.0","@apache-arrow/adbc-driver-manager-linux-x64-gnu":"0.24.0","@apache-arrow/adbc-driver-manager-linux-arm64-gnu":"0.24.0","@apache-arrow/adbc-driver-manager-darwin-arm64":"0.24.0"},"_id":"@apache-arrow/adbc-driver-manager@0.24.0","bugs":{"url":"https://github.com/apache/arrow-adbc/issues"},"homepage":"https://github.com/apache/arrow-adbc#readme","_integrity":"sha512-qgsyrvitMnbpIu2hRXOx5U5ZIct7UQ+29p/LWp4sTlIAi8sAMCN4wRamwa/thD53a83YjkceRRpTug8G8f2GTQ==","_resolved":"/tmp/arrow-post-npm.odp4C/apache-arrow-adbc-driver-manager-0.24.0.tgz","_from":"file:/tmp/arrow-post-npm.odp4C/apache-arrow-adbc-driver-manager-0.24.0.tgz","_nodeVersion":"24.10.0","_npmVersion":"11.6.1","dist":{"integrity":"sha512-qgsyrvitMnbpIu2hRXOx5U5ZIct7UQ+29p/LWp4sTlIAi8sAMCN4wRamwa/thD53a83YjkceRRpTug8G8f2GTQ==","shasum":"dd24f23c8d49f8ef06d44706610985eefc1c8508","tarball":"https://registry.npmjs.org/@apache-arrow/adbc-driver-manager/-/adbc-driver-manager-0.24.0.tgz","fileCount":12,"unpackedSize":102919,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDbAWBS/w6fGju/O7n5IBoWArmE6jZOHcqxbg2GEVdXigIhAL6b9wO4tgeO0dZ7gMosPN2epo679mxUypFkrkXD/5hN"}]},"_npmUser":{"name":"li.davidm","email":"npm@lidavidm.me"},"directories":{},"maintainers":[{"name":"ptaylor","email":"paul.e.taylor@me.com"},{"name":"wesm","email":"wesmckinn+npm@gmail.com"},{"name":"xhochy","email":"uwelk@xhochy.com"},{"name":"kou","email":"kou@cozmixng.org"},{"name":"kszucs","email":"szucs.krisztian@gmail.com"},{"name":"jorgecarleitao","email":"jorgecarleitao@gmail.com"},{"name":"raulcd","email":"raulcumplido@gmail.com"},{"name":"amoeba","email":"petridish@gmail.com"},{"name":"li.davidm","email":"npm@lidavidm.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/adbc-driver-manager_0.24.0_1785200912954_0.31872065314637643"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-08T00:46:31.634Z","modified":"2026-07-28T01:08:33.347Z","0.23.0":"2026-04-08T00:46:31.926Z","0.24.0":"2026-07-28T01:08:33.106Z"},"bugs":{"url":"https://github.com/apache/arrow-adbc/issues"},"license":"Apache-2.0","homepage":"https://github.com/apache/arrow-adbc#readme","keywords":["adbc","arrow","database","arrow-adbc"],"repository":{"type":"git","url":"git+https://github.com/apache/arrow-adbc.git","directory":"javascript"},"description":"Node.js ADBC Driver Manager","maintainers":[{"name":"ptaylor","email":"paul.e.taylor@me.com"},{"name":"wesm","email":"wesmckinn+npm@gmail.com"},{"name":"xhochy","email":"uwelk@xhochy.com"},{"name":"kou","email":"kou@cozmixng.org"},{"name":"kszucs","email":"szucs.krisztian@gmail.com"},{"name":"jorgecarleitao","email":"jorgecarleitao@gmail.com"},{"name":"raulcd","email":"raulcumplido@gmail.com"},{"name":"amoeba","email":"petridish@gmail.com"},{"name":"li.davidm","email":"npm@lidavidm.me"}],"readme":"<!---\n  Licensed to the Apache Software Foundation (ASF) under one\n  or more contributor license agreements.  See the NOTICE file\n  distributed with this work for additional information\n  regarding copyright ownership.  The ASF licenses this file\n  to you under the Apache License, Version 2.0 (the\n  \"License\"); you may not use this file except in compliance\n  with the License.  You may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\n  Unless required by applicable law or agreed to in writing,\n  software distributed under the License is distributed on an\n  \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n  KIND, either express or implied.  See the License for the\n  specific language governing permissions and limitations\n  under the License.\n-->\n\n# Apache Arrow ADBC: Node.js Driver Manager\n\nNode.js bindings for the [Arrow Database Connectivity (ADBC)](https://arrow.apache.org/adbc/) standard.\nBuilt on a native [NAPI](https://nodejs.org/api/n-api.html) addon — requires Node.js 22+ and does not\nsupport browser or Deno environments. Bun is not officially tested.\n\n> **Alpha.** APIs may change without notice.\n> If you try this and run into issues or have feedback, please [open an issue](https://github.com/apache/arrow-adbc/issues).\n\n## Installation\n\n```bash\nnpm install @apache-arrow/adbc-driver-manager apache-arrow\n```\n\n## Usage\n\nThe `driver` option accepts either a full path to a shared library or a short\nname. When using a short name, the driver manager searches system and user\npaths for a matching ADBC driver manifest or library.\n\n```typescript\nimport { AdbcDatabase } from '@apache-arrow/adbc-driver-manager'\n\n// Short name (resolves from system/user paths)\nconst db = new AdbcDatabase({ driver: 'sqlite' })\n```\n\n```typescript\n// Or a full path to a driver shared library\nconst db = new AdbcDatabase({ driver: '/path/to/libadbc_driver_sqlite.dylib' })\n```\n\nOnce you have a database, open a connection and run queries:\n\n```typescript\nconst connection = await db.connect()\n\n// Execute a query — returns an Apache Arrow Table\nconst table = await connection.query('SELECT 1 AS value')\nconsole.log(table.toArray())\n\n// For large result sets, stream record batches instead\nconst reader = await connection.queryStream('SELECT * FROM large_table')\nfor await (const batch of reader) {\n  console.log(`Received batch with ${batch.numRows} rows`)\n}\n\n// DML — returns the number of affected rows\nconst affected = await connection.execute('DELETE FROM my_table WHERE id = 1')\n\nawait connection.close()\nawait db.close()\n```\n\nFor finer-grained control, use the statement API directly:\n\n```typescript\nimport { tableFromArrays } from 'apache-arrow'\n\nconst stmt = await connection.createStatement()\nawait stmt.setSqlQuery('SELECT * FROM my_table WHERE id = ?')\nawait stmt.bind(tableFromArrays({ id: [42] }))\nconst reader = await stmt.executeQuery()\nfor await (const batch of reader) {\n  console.log(batch.toArray())\n}\nawait stmt.close()\n```\n\n## Development\n\n### Prerequisites\n\n- Node.js 22+\n- Rust (latest stable)\n- CMake 3.14+ and a C/C++ compiler (for building the driver libraries)\n- npm (usually comes with Node.js)\n\n### Building from Source\n\n1. Install dependencies:\n\n   ```bash\n   npm install\n   ```\n\n2. Build the Rust addon:\n\n   ```bash\n   npm run build:debug   # debug build (faster)\n   npm run build         # release build\n   ```\n\n### Testing\n\nThe tests require a built ADBC driver library (e.g. SQLite). Build everything including the SQLite driver with:\n\n```bash\nnpm run build:driver\n```\n\nThis runs CMake to compile the C ADBC drivers into `build/lib/` and builds the Rust Node.js addon. Once built, run the tests:\n\n```bash\nnpm test\n```\n\n## License\n\nApache-2.0\n","readmeFilename":"README.md"}