A Web GUI Dashboard for local or remote DynamoDB.
Install application globally:
npm install --global dynamodb-dashboardStart dynamodb-dashboard instance:
dynamodb-dashboard start-d, --debug: show log output of running application (default: false)-p, --port <port>: port to run app (default: 4567)-h, --host <host>: host to run app (default: 127.0.0.1)
Currently, following environment variables are supported:
AWS_REGIONAWS_ENDPOINTAWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_SESSION_TOKEN
To configure, set the AWS environment variables in the terminal session before launching dynamodb-dashboard, example in .bashrc file.
The application uses the AWS SDK for JavaScript (v2), which supports multiple ways to load credentials automatically through the default credential provider chain.
- Explicit environment variables
AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_SESSION_TOKEN(optional)
These take highest priority if provided.
~/.aws/credentials- AWS SSO sessions
- EC2/ECS instance metadata
- Other AWS SDK-supported sources
Set environment variables and start dynamodb-dashboard instance:
export AWS_REGION=us-west-2
export AWS_ENDPOINT=http://localhost:8000
export AWS_ACCESS_KEY_ID=fakeAccessKeyId
export AWS_SECRET_ACCESS_KEY=fakeSecretAccessKey
dynamodb-dashboard startOR
-
git clone https://github.com/kritish-dhaubanjar/dynamodb-dashboard.git
-
cd dynamodb-dashboard -
make watch
Run a container (from Docker Hub)
-
docker pull kritishdhaubanjar/dynamodb-dashboard:latest
-
docker run \ --name dynamodb-dashboard \ -p 8080:4567 \ -e AWS_REGION=us-west-2 \ -e AWS_ENDPOINT=http://host.docker.internal:8000 \ -e AWS_ACCESS_KEY_ID=fakeAccessKeyId \ -e AWS_SECRET_ACCESS_KEY=fakeSecretAccessKey \ kritishdhaubanjar/dynamodb-dashboard:latest
To configure Nginx to serve dynamodb-dashboard with (EventSource (Server-Sent Events or SSE) event stream), you need to ensure Nginx is correctly set up to handle long-lived HTTP connections and provide appropriate headers. Here's a basic example configuration:
server
{
listen 80;
listen [::]:80;
server_name _;
proxy_read_timeout 1d;
proxy_send_timeout 1d;
proxy_connect_timeout 1d;
location /
{
proxy_pass http://localhost:4567;
}
location /dynamodb/api/database/stream/
{
proxy_buffering off;
proxy_cache off;
chunked_transfer_encoding off;
add_header Content-Type text/event-stream;
add_header Cache-Control no-cache;
add_header Connection keep-alive;
proxy_pass http://localhost:4567;
}
}2022-09-24_22-28-32.mp4
Thanks goes to these wonderful people:
Bimochan Shrestha π |
Bipin Manandhar π |
Nihal Maskey π |
Biplap Bhattarai π |
Jim Dabell π |
yyyoichi π |
Akhil Lawrence π |
Distributed under the MIT License. See LICENSE for more information.

