surrealdb / surrealdb.node

A Node.js engine for the SurrealDB JavaScript SDK
https://surrealdb.com
Apache License 2.0
61 stars 10 forks source link
database database-connector iot-database javascript javascript-library node-library node-module nodejs realtime-database surreal surrealdb typescript


 

A Node.js engine for the SurrealDB JavaScript SDK.


   

     

@surrealdb/node

A Node.js engine for the SurrealDB JavaScript SDK.

This library is a plugin for the SurrealDB JavaScript SDK, which can be used to run SurrealDB as an embedded database within a Node.js server side environment.

It enables SurrealDB to be run in-memory, or to persist data by running on top of SurrealKV. It allows for a consistent JavaScript and TypeScript API when using the surrealdb.js library by adding support for embedded storage engines (memory, surrealkv) alongside the remote connection protocols (http, https, ws, wss).

Example usage

import { Surreal } from 'surrealdb';
import { surrealdbNodeEngines } from '@surrealdb/node';

// Enable the WebAssembly engines
const db = new Surreal({
    engines: surrealdbNodeEngines(),
});

// Now we can start SurrealDB as an in-memory database
await db.connect("mem://");
// Or we can start a persisted SurrealKV database
await db.connect("surrealkv://demo");

// Now use the JavaScript SDK as normal.