Skip to content

aaronshaf/dynamodb-admin

Repository files navigation

dynamodb-admin

npm

GUI for DynamoDB Local, dynalite, localstack etc.

Usage

Use as globally installed app

npm install -g dynamodb-admin

# For Windows:
set DYNAMO_ENDPOINT=http://localhost:8000
dynamodb-admin

# For Mac/Linux:
DYNAMO_ENDPOINT=http://localhost:8000 dynamodb-admin

Options:

  • --open / -o - opens server URL in a default browser on start
  • --port PORT / -p PORT - Port to run on (default: 8001)
  • --host HOST / -h HOST - Host to run on (default: localhost)

You can specify host & port to run on by setting environment variables HOST and PORT respectively. This will override value specified on the command line. This is legacy way to specify the HOST & PORT.

If you use a local dynamodb that cares about credentials, you can configure them by using the following environment variables AWS_REGION AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY

For example with the amazon/dynamodb-local docker image you can launch dynamodb-admin with:

AWS_REGION=eu-west-1 AWS_ACCESS_KEY_ID=local AWS_SECRET_ACCESS_KEY=local dynamodb-admin

If you are accessing your database from another piece of software, the AWS_ACCESS_KEY_ID used by that application must match the AWS_ACCESS_KEY_ID you used with dynamodb-admin if you want both to see the same data.

Use as a library in your project

const AWS = require('aws-sdk');
const {createServer} = require('dynamodb-admin');

const dynamodb = new AWS.DynamoDB();
const dynClient = new AWS.DynamoDB.DocumentClient({service: dynamodb});

const app = createServer(dynamodb, dynClient);

const host = 'localhost';
const port = 8001;
const server = app.listen(port, host);
server.on('listening', () => {
  const address = server.address();
  console.log(`  listening on http://${address.address}:${address.port}`);
});

Development

Run DYNAMO_ENDPOINT=http://localhost:8000 npm run dev to start dynamodb-admin in development mode (with auto-reloading on change).

See also

Screencast

Screencast