Skip to content
This repository has been archived by the owner on Jul 1, 2022. It is now read-only.

Latest commit

 

History

History
79 lines (58 loc) · 1.54 KB

README.md

File metadata and controls

79 lines (58 loc) · 1.54 KB

Genji.js

Genji

Document-oriented, embedded, SQL database

Experimental wrapper around the Genji database.

Getting started

Install Genji

yarn add @genjidb/genji

Copy the wasm file from node_modules into your public directory

cp node_modules/@genjidb/genji/genji.wasm public/

Or if you are using Webpack, add this to your config, after installing the copy-webpack-plugin loader :

yarn add --dev copy-webpack-plugin
const CopyWebpackPlugin = require('copy-webpack-plugin');

module.exports = {
    ...
    plugins: [
        new CopyWebpackPlugin({
            patterns: [
                { from: 'node_modules/@genjidb/genji/dist/genji.wasm' }
            ]
        })
    ]
}

Usage

import { initDatabase } from '@genjidb/genji';

async function run() {
  const genji = await initDatabase();
  const db = await genji.Database();
  await db.exec('CREATE TABLE foo');
  await db.exec('INSERT INTO foo (a) VALUES (1), (2), (3)');

  db.query('SELECT * FROM foo').forEach(v => console.log(v));
}

run();

Build from source

Requires Go >= 1.16 and Node >= 10

yarn install
yarn build

Running tests

yarn test