Skip to content

A more user-friendly DynamoDB experience as compared to the AWS CLI

License

Notifications You must be signed in to change notification settings

skborissov/dynshell

Repository files navigation

Dynshell

A more user-friendly DynamoDB experience as compared to the AWS CLI

  • Simplifies writing expressions by removing the need for DynamoDB JSON and placeholders, while preserving expression syntax.
  • Autocompletion for table names, keys, flag names and values
  • Command history and keyboard shortcuts as provided by go-prompt

render1650993139634

Setup

Requirements

  • AWS CLI configured

Installation

Binaries can be found on Github releases. To build locally, run go build.

Usage

Available commands

  • use Change table context
  • desc Describe current table
  • query Based on AWS CLI query
  • scan Based on AWS CLI scan
  • update Based on AWS CLI update-item
  • put Based on AWS CLI put-item
  • delete Based on AWS CLI delete-item

Expression syntax

Expressions syntax is simplified in how attribute names and values are provided, but is otherwise unchanged.

Names

Names are written literally. Exceptions to this are special names (a small subset of the DynamoDB reserved names and names with spaces, which should be quoted with backticks (`).

Values

The way values are handled is based on DynamoDB's PartiQL support. Examples for each supported type are listed below.

  • Boolean true
  • Number 123.456
  • String 'string value' (single quotes can be escaped with a backslash ())
  • Null NULL
  • Number Set <<1, 2.5, 3>>
  • String Set <<'first', 'second', 'third'>>
  • List [123, 'string']
  • Map { key1: 'value1', key2: 123 }

About

A more user-friendly DynamoDB experience as compared to the AWS CLI

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published