An open API service indexing awesome lists of open source software.

https://github.com/lusingander/ddv

Terminal DynamoDB Viewer ⚡️
https://github.com/lusingander/ddv

amazon-dynamodb aws aws-dynamodb dynamodb dynamodb-client ratatui terminal tui

Last synced: 7 months ago
JSON representation

Terminal DynamoDB Viewer ⚡️

Awesome Lists containing this project

README

          

# DDV

[![Crate Status](https://img.shields.io/crates/v/ddv.svg)](https://crates.io/crates/ddv)

Terminal DynamoDB Viewer ⚡️

## About

DDV is a TUI application to view Amazon DynamoDB in the terminal.

> [!WARNING]
> This application is designed to be used in a local environment or in a development environment with a small amount of data. It is not suitable for use in a production environment with large amounts of data.

### Goals

- Provide a simple way to view, search, update, and delete DynamoDB items in the terminal.

### Non-Goals

- Efficiently handling large tables for querying or updating.
- Offering full support for all DynamoDB API operations.

## Installation

### [Cargo](https://crates.io/crates/ddv)

```
$ cargo install --locked ddv
```

### [Homebrew (macOS)](https://github.com/lusingander/homebrew-tap/blob/master/ddv.rb)

```
$ brew install lusingander/tap/ddv
```

### Downloading binary

You can download pre-compiled binaries from [releases](https://github.com/lusingander/ddv/releases).

## Usage

After installation, run the following command:

```
$ ddv
```

Basically, you can use it in [the same way as the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html).

In other words, if the default profile settings exist or [the environment variables are set](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-envvars.html), you do not need to specify any options.

### Options

```
DDV - Terminal DynamoDB Viewer ⚡️

Usage: ddv [OPTIONS]

Options:
-r, --region AWS region
-e, --endpoint-url AWS endpoint url
-p, --profile AWS profile name
-h, --help Print help
-V, --version Print version
```

### Keybindings

The basic key bindings are as follows:

| Key | Description |
| ------------------------------------- | -------------------- |
| Ctrl-C | Quit app |
| Enter | Open selected item |
| Backspace | Go back to previous |
| j/k/h/l ↓/↑/←/→ | Select item / Scroll |
| ? | Show help |

Detailed operations on each view can be displayed by pressing `?` key.

### Config

If the `DDV_CONFIG` environment variable specifies the path to the config file, the config will be loaded.

The config file uses the following format:

```toml
[ui.table_list]
# The width of the table list.
# type: u16
list_width = 30

[ui.table]
# The maximum column width for each attributes.
# type: u16
max_attribute_width = 30
# The maximum width of the expansion.
# type: u16
max_expand_width = 35
# The maximum height of the expansion.
# type: u16
max_expand_height = 6
```

## Screenshots

## Related projects

- [STU](https://github.com/lusingander/stu) - TUI explorer application for Amazon S3

## License

MIT