@monkdb/monkdb
v0.1.6
Published
π Official TypeScript SDK for MonkDB β a unified, AI-native database for diverse data workloads
Maintainers
Readme
Official MonkDB TS/JS SDK
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.
β
@monkdb/monkdb SDK Compatibility and Usage Guide
π§ Module System:
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 Details:
- Package: @monkdb/monkdb
- Version: 0.1.6 (latest as of now)
- Module Type: ESM
- Types: Bundled TypeScript type declarations (.d.ts)
π» Node.js Version Support
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 | β οΈ Works with caveats (not recommended) | | >=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
π Features
π 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).
π¦ Installation
To install the MonkDB's TypeScript SDK, use npm or yarn:
npm install @monkdb/monkdbor
yarn add @monkdb/monkdbπ§ͺ Usage
Typescript Usage Example
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.
JavaScript Usage Example
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"π Documentation
Visit our tech documentation on how to execute use cases on MonkDB.
Examples
To get a feel of MonkDB using TS/JS, please follow the instructions available in this README file.
π License
This project is licensed under the Apache-2.0 License.
π€ Support
For enterprise support or any inquiries, please contact us at π§ [email protected].
