/dynomite

⚡🦀 🧨 make your rust types fit DynamoDB and visa versa

Primary LanguageRustMIT LicenseMIT

dynomite GitHub Actions Coverage Status Software License crates.io Released API docs Master API docs

dynomite makes DynamoDB fit your types (and visa versa)

Overview

Goals

  • ⚡ make writing dynamodb applications in rust a productive experience
  • 🦀 exploit rust's type safety features
  • 👩‍💻 leverage existing work of the rusoto rust project
  • ☔ commitment to supporting applications built using stable rust
  • 📚 commitment to documentation

Features

  • 💌 less boilerplate
  • ♻️ automatic async pagination
  • 🕶️ client level retry interfaces for robust error handling

Please see API documentation for how to get started

📦 Install

In your Cargo.toml file, add the following under the [dependencies] heading

dynomite = "0.7"

🤸 Examples

You can find some example application code under dynomite/examples

Dynamodb local

AWS provides a convient way to host a local instance of DynamoDB for testing.

Here is a short example of how to get up a testing locally quickly with both dynomite as well as rusoto_dynamodb.

In one terminal spin up a Docker container for DynamoDB local listening on port 8000

$ docker run --rm -p 8000:8000 amazon/dynamodb-local

In another, run a rust binary with a client initialized like you see the the local.rs example

Resources

Doug Tangren (softprops) 2018-2019