dynamo

DynamoDB client for node.js

dynamo

This is a node.js binding for the DynamoDB service provided by Amazon Web Services. It currently supports the entire DynamoDB API in an unsugared (read: Amazon-flavored (read: ugly)) format. I'll be adding a more comfortable API over the coming week to make DynamoDB operations more node-ish, so stay tuned.

  • Use travis-ci's continuous integration testing for reliability
  • Abstract DynamoDB's implementation, but not its tradeoffs/philosophy
  • Be to DynamoDB what @mranney's excellent node_redis is to Redis
var dynamo = require("dynamo") // name pending, unfortunately 
  , db = dynamo.createClient()
 
// the current API is unsugared, mirrors the DynamoDB API... 
db.listTables({}, function(errdata) {
  if (err) return console.warn(err)
 
  var name, names = data.TableNames
 
  while (name = names.shift()) {
    console.log("table: " + name)
  }
})
 
// but an additional, more node-friendly API is in the works. 
// this is a theoretical example of what i have in mind: 
db.tables.forEach(function(errnamenext) {
  if (err) return console.warn(err)
 
  console.log("table: " + name)
 
  if (next) next() // use connect-style continuations for batching 
})

Copyright (c) 2012 Jed Schmidt. See LICENSE.txt for details.

Send any questions or comments here.