
Research
/Security News
npm Malware Campaign Uses Adspect Cloaking to Deliver Malicious Redirects
Malicious npm packages use Adspect cloaking and fake CAPTCHAs to fingerprint visitors and redirect victims to crypto-themed scam sites.
@sqliteai/sqlite-js
Advanced tools
SQLite JS extension for Node.js - Custom SQLite functions in JavaScript
SQLite JS extension packaged for Node.js
SQLite JS is a powerful extension that brings JavaScript capabilities to SQLite. With this extension, you can create custom SQLite functions, aggregates, window functions, and collation sequences using JavaScript code, allowing for flexible and powerful data manipulation directly within your SQLite database.
npm install @sqliteai/sqlite-js
The package automatically downloads the correct native extension for your platform during installation.
| Platform | Architecture | Package |
|---|---|---|
| macOS | ARM64 (Apple Silicon) | @sqliteai/sqlite-js-darwin-arm64 |
| macOS | x86_64 (Intel) | @sqliteai/sqlite-js-darwin-x86_64 |
| Linux | ARM64 (glibc) | @sqliteai/sqlite-js-linux-arm64 |
| Linux | ARM64 (musl/Alpine) | @sqliteai/sqlite-js-linux-arm64-musl |
| Linux | x86_64 (glibc) | @sqliteai/sqlite-js-linux-x86_64 |
| Linux | x86_64 (musl/Alpine) | @sqliteai/sqlite-js-linux-x86_64-musl |
| Windows | x86_64 | @sqliteai/sqlite-js-win32-x86_64 |
For detailed information on how to use the JS extension features, see the main documentation.
import { getExtensionPath } from '@sqliteai/sqlite-js';
import Database from 'better-sqlite3';
const db = new Database(':memory:');
db.loadExtension(getExtensionPath());
// Ready to use
const version = db.prepare('SELECT js_version()').pluck().get();
console.log('JS extension version:', version);
For complete, runnable examples, see the sqlite-extensions-guide.
These examples are generic and work with all SQLite extensions: sqlite-vector, sqlite-sync, sqlite-js, and sqlite-ai.
getExtensionPath(): stringReturns the absolute path to the SQLite JS extension binary for the current platform.
Returns: string - Absolute path to the extension file (.so, .dylib, or .dll)
Throws: ExtensionNotFoundError - If the extension binary cannot be found for the current platform
Example:
import { getExtensionPath } from '@sqliteai/sqlite-js';
const path = getExtensionPath();
// => '/path/to/node_modules/@sqliteai/sqlite-js-darwin-arm64/js.dylib'
getExtensionInfo(): ExtensionInfoReturns detailed information about the extension for the current platform.
Returns: ExtensionInfo object with the following properties:
platform: Platform - Current platform identifier (e.g., 'darwin-arm64')packageName: string - Name of the platform-specific npm packagebinaryName: string - Filename of the binary (e.g., 'js.dylib')path: string - Full path to the extension binaryThrows: ExtensionNotFoundError - If the extension binary cannot be found
Example:
import { getExtensionInfo } from '@sqliteai/sqlite-js';
const info = getExtensionInfo();
console.log(`Running on ${info.platform}`);
console.log(`Extension path: ${info.path}`);
getCurrentPlatform(): PlatformReturns the current platform identifier.
Returns: Platform - One of:
'darwin-arm64' - macOS ARM64'darwin-x86_64' - macOS x86_64'linux-arm64' - Linux ARM64 (glibc)'linux-arm64-musl' - Linux ARM64 (musl)'linux-x86_64' - Linux x86_64 (glibc)'linux-x86_64-musl' - Linux x86_64 (musl)'win32-x86_64' - Windows x86_64Throws: Error - If the platform is unsupported
isMusl(): booleanDetects if the system uses musl libc (Alpine Linux, etc.).
Returns: boolean - true if musl is detected, false otherwise
class ExtensionNotFoundError extends ErrorError thrown when the SQLite JS extension cannot be found for the current platform.
This project is licensed under the Elastic License 2.0.
For production or managed service use, please contact SQLite Cloud, Inc for a commercial license.
Contributions are welcome! Please see the main repository to open an issue.
FAQs
SQLite JS extension for Node.js - Custom SQLite functions in JavaScript
We found that @sqliteai/sqlite-js demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 5 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
/Security News
Malicious npm packages use Adspect cloaking and fake CAPTCHAs to fingerprint visitors and redirect victims to crypto-themed scam sites.

Security News
Recent coverage mislabels the latest TEA protocol spam as a worm. Here’s what’s actually happening.

Security News
PyPI adds Trusted Publishing support for GitLab Self-Managed as adoption reaches 25% of uploads