@conduitvc/dynamodb-emulator

DynamoDB emulator nodejs wrapper

Usage no npm install needed!

<script type="module">
  import conduitvcDynamodbEmulator from 'https://cdn.skypack.dev/@conduitvc/dynamodb-emulator';
</script>

README

DynamoDB Emulator

This package contains wrapper logic to download and use the dynamodb emulator.

This package automatically (on install) downloads the latest dynamodb emulator.

Much of the logic in this package is around retrying to start the server. This can be an issue when using jest and there is contention when binding a port.

Usage

const emulator = require('@conduitvc/dynamodb-emulator');

async function main() {
  // start the emulator
  const emu = await emulator.launch({
    /* options */
  });
  // by default we launch the emulator on some open port in the ephemeral range in the 'inMemory' mode.

  // get the dynamodb client (aws-sdk)
  const dynamodb = emulator.getClient(emu);
}

Options:

port

Port to bind the emulator to. If omitted will bind to the first available port in the ephemeral range.

default: null

sharedDb

If to use a single database file to use in the emulator. Should typically be left on.

default: true

dbPath

Where to launch the database. Will automatically create this directory if missing.

deafult: null

startTimeout

Maximum amount of time to wait for the dynamodb emulator to start listening on it's chosen port.

default: 5000