Synchronous usage - nsc-de/js-database GitHub Wiki

Warning: Using synchronus versions of some adapters may slow down you application.

First of all use the synchronous adapters of the adapter

Typescript

import { createDatabase } from 'nscdb';
import { SyncJsonFileAdapter } from 'nscdb/json_adapter';

Javascript

const { createDatabase } = require('nscdb');
const { SyncJsonFileAdapter } = require('nscdb/json_adapter');

Now you can use basically the normal quickstart, but you are working synchronously now, no await keyword is needed any longer

let database = createDatabase(new JsonFileAdapter("./database.json"));

// Set defaults
database.setDefaults({
  users: []
});

// Push a value into the Database
let users = database.get("users");
users.push({
  id: database.generateId("users"),
  name: 'Harleen Dolan',
  password: 'a password'
});
  
users.push({
  id: database.generateId("users"),
  name: 'Lisa Bradley',
  password: 'another password'
});

// print output data from the database
console.log(database.data);

// Console Output:
// >> {
// >>   users: [
// >>     { id: 0, name: 'Harleen Dolan', password: 'a password' },
// >>     { id: 1, name: 'Lisa Bradley', password: 'another password' }
// >>   ],
// >>   id_counters: { users: 1 }
// >> }

// Save the Database
database.saveData();
⚠️ **GitHub.com Fallback** ⚠️