@webb/ensure-database
TypeScript icon, indicating that this package has built-in type declarations

2022.3.1-4.1 • Public • Published

@webb/ensure-database

Ensure your desired RethinkDB database exists. If not, it gets created.

Install

# Install this module, with RethinkDB driver
npm i @webb/ensure-database rethinkdb-ts

Usage

import { ensureDatabase } from "@webb/ensure-database";   // use the named export...
import doesMyDatabaseExist from "@webb/ensure-database";  // or, the default and name it whatever you want
import server from "some-module";

const databaseOptions = {
  buffer: 2,
  db: "my-cool-product",
  discovery: false,
  host: "localhost",
  max: 5,
  password: "need-a-vc-to-sell-my-company-to-faang",
  port: 90210,
  silent: true,
  user: "admin"
};

server.listen(3000, async() => {
  try {
    await ensureDatabase({ name: "yourDatabase", options: databaseOptions });
  } catch(databaseError) {
    console.error(databaseError);
  }

  console.info("Server is running at port 3000");
});

API

ensureDatabase({ name, options? })

name

Type: string (required)

options

Type: object (optional)

Available options:

// All values are defaults, aside from "db".
// Internally, "db" will be the same value as "name" if not declared.
{
  buffer: 2,
  db: name,
  discovery: false,
  host: "localhost",
  max: 5,
  password: "",
  port: 28015,
  silent: true,
  user: "admin"
}

Tests

# Run all tests, sequentially
npm test

# Test dependencies for latest versions
npm run test:dependencies

# Lint "src" directory
npm run test:lint

# Test this module
npm run test:lint-assert

Package Sidebar

Install

npm i @webb/ensure-database

Weekly Downloads

0

Version

2022.3.1-4.1

License

MIT

Unpacked Size

12.8 kB

Total Files

9

Last publish

Collaborators

  • netoperatorwibby