Welcome to the official TypeScript SDK for MonkDB, an AI-native database designed to handle diverse data workloads seamlessly. This SDK empowers developers to interact with MonkDB using TypeScript, leveraging its robust features for modern application development.β
Note:
The @monkdb/monkdb
TS/JS SDK, which is authored using modern ESM (ECMAScript Modules), fully supports both JavaScript and TypeScript environments, provided the runtime supports ESM.
The SDK is authored and published as an ES Module (ESM).
- β Works seamlessly in TypeScript projects.
- β Fully usable in JavaScript (ESM) projects.
β οΈ Not directly compatible with legacy CommonJS (require()) environments unless transpiled or imported via dynamic import (await import()).
- Package: @monkdb/monkdb
- Version: 0.1.6 (latest as of now)
- Module Type: ESM
- Types: Bundled TypeScript type declarations (.d.ts)
To use the SDK without any issues, make sure you're using a Node.js version that natively supports ESM and modern TypeScript features.
Node.js Version | ESM Support | @monkdb/monkdb SDK Compatibility |
---|---|---|
>=14.13.0 | β Experimental ESM support with flags or .mjs | |
>=16.0.0 | β Stable ESM support | β Fully compatible |
>=18.0.0 | β Stable + LTS | β Recommended |
>=20.0.0 | β LTS + Modern runtime features | β Fully supported |
>=21.x.x | β Latest features, top-tier performance | β Fully supported |
<=14.x | β ESM not fully supported | β Not compatible |
- β Recommended Node.js version: 18.x or newer
β οΈ Minimum working version: 14.13.0 (with "type": "module" and/or .mjs extensions)- β Not supported: Node <=14.x, legacy CommonJS-only environments
-
π Time Series Data: Efficiently store and analyze time-series data, enabling applications to process and query time-stamped information with ease.β
-
π§ Vector Data Integration: Manage and query vector data, facilitating operations like similarity searches and machine learning model integrations.β
-
π Full-Text Search: Perform comprehensive text searches across your datasets, enhancing the retrieval of relevant information through advanced indexing and querying capabilities.β
-
π Geospatial Queries: Execute complex geospatial queries to handle location-based data, supporting applications that require spatial analysis and mapping functionalities.β
-
π¦ Blob Storage: Store and retrieve binary large objects (BLOBs), allowing for the management of multimedia files, documents, and other large data types within the database.β
-
π Document Store with SQL Interface: Combine the flexibility of a document store with the power of SQL, providing a PGWire-compatible SQL interface for structured querying of unstructured data.
-
π Streaming SQL- Run realtime/streaming data workloads to perform petabyte scale SQL analytics (realtime).
To install the MonkDB's TypeScript SDK, use npm
or yarn
:
npm install @monkdb/monkdb
or
yarn add @monkdb/monkdb
Here's a basic example of how to establish a connection to MonkDB and execute queries using the SDK:
// index.ts
import { MonkConnection } from '@monkdb/monkdb';
const connection = new MonkConnection({
servers: ['http://127.0.0.1:4200'],
username: 'your_username',
password: 'your_password',
});
const cursor = connection.cursor();
async function runQuery() {
await cursor.execute('SELECT * FROM your_table');
const results = cursor.fetchall();
console.log(results);
}
runQuery().catch(console.error).finally(() => {
cursor.close();
connection.close();
});
No special setup is needed beyond tsconfig.json
with "module": "ES2020"
or higher.
Here's a basic example of how to establish a connection to MonkDB and execute queries using the SDK:
// index.js
import { MonkConnection } from '@monkdb/monkdb';
const conn = new MonkConnection({
servers: ['http://localhost:4200'],
username: 'monk',
password: 'monk',
schema: 'doc',
});
const cursor = conn.cursor();
await cursor.execute('SELECT * FROM my_table');
const rows = cursor.fetchall();
console.log(rows);
cursor.close();
conn.close();
Ensure your package.json
contains:
"type": "module"
Visit our tech documentation on how to execute use cases on MonkDB.
To get a feel of MonkDB using TS/JS, please follow the instructions available in this README file.
This project is licensed under the Apache-2.0 License.
For enterprise support or any inquiries, please contact us at π§ support@monkdb.com.