@flybondi/flynamo

An AWS DynamoDB client wrapper

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
82Jun 9, 2021Jul 5, 2018Minified + gzip package size for @flybondi/flynamo in KB

Readme

@flybondi/flynamo

CircleCI js-semistandard-style code style: prettier

Let your AWS DynamoDB client take off ✈️!

Read the docs.

  • 🔧 Simplifies creating requests and parsing responses.
  • ✨ Automatic generation of AWS.DynamoDB attribute maps.
  • 💪 Supports all of AWS.DynamoDB API.
  • ✏️ Fully typed via d.ts typings.
  • Infers data types and conventional names for keys.
  • 💪 Import single composable functions for each AWS.DynamoDB operation.
  • 🙌 Plays well with functional libraries like ramda or lodash/fp.
# Install AWS SDK
npm i aws-sdk

# Install Flynamo
npm i @flybondi/flynamo

Basic usage

Wrap an instance of an AWS.DynamoDB client with flynamo and you're good to go. The result will be an object exposing all of Flynamo's own API.

const AWS = require('aws-sdk');
const flynamo = require('@flybondi/flynamo');

const { forTable } = flynamo(new AWS.DynamoDB());
const { insert, update, remove } = forTable('SomeTable');

(async function () {
  // Insert a document into `SomeTable`
  await insert({ id: 42, name: 'Bob' });

  // Update its contents
  await update(42, { name: 'Alice' });

  // ...and delete it
  await remove(42);
})();

API

Dig into the documentation to learn about the available functions.


Made with 💛 by Flybondi.

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.