Keystone

DynamoDB, the way a Mac app should feel.

Keystone is a native client for DynamoDB on macOS and iPad. Query, scan and PartiQL with a real grid, a safe editor, and single-table tooling the console never had. Nothing leaves your machine except to AWS.

Download on the Mac App Store Get it for iPad

Built for single-table design

Entity types

Define what each row is by a key prefix or a discriminator, or let Keystone propose them from the rows you have loaded. Rows are colour-coded and labelled.

Focus the grid on one type

Pick a type and the grid shows only its rows, shaped to the attributes those rows actually carry. An order never gets an email column.

Item collections

Everything sharing a partition key — the customer, their orders, their addresses — in one view, grouped by type and ordered by sort key.

Everything else you would expect, done properly

A grid that keeps up

Virtualised on both axes, frozen key columns, per-table layouts, changed-row highlighting, and copy as JSON, DynamoDB JSON, CSV or TSV.

Query, scan and PartiQL

Visual key conditions and filters, raw expressions when you want them, and a PartiQL editor with parameters and batches. Every request is in the operation log.

Safe by default

Production connections open read-only. Destructive operations preview their keys and ask for the table name. Edits this session can be reverted.

Every credential style

Shared profiles, assume-role chains, MFA, Identity Center, credential_process, stored keys in the Keychain, and local endpoints — detected automatically.

Bulk without fear

Import, export, copy between tables and accounts, delete by query, and seed with generated data — paced under a capacity ceiling and retried on throttling.

Code you can paste

The exact operation as JavaScript SDK v3, boto3 or AWS CLI, regenerated live as you edit.

Private by construction

Credentials live in the Keychain. Query history and saved queries record table and attribute names, never item data. Crash reporting and usage analytics are off by default, and what each would send is shown in the app before you turn it on. Read the privacy policy.