JSPM

  • Created
  • Published
  • Downloads 147485
  • Score
    100M100P100Q159272F
  • License MIT

A mock implementation of Amazon's DynamoDB built on LevelDB

Package Exports

  • dynalite

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (dynalite) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

dynalite

Build Status

A mock implementation of Amazon's DynamoDB, focussed on correctness and performance, and built on LevelDB (well, @rvagg's awesome LevelUP to be precise).

All basic actions and validations have now been implemented, but there are still a number of issues (see below) before this module should be considered for general use.

Example

$ PORT=8000 dynalite  # defaults to port 4567

Or programmatically:

// Returns a standard Node.js HTTP server
var dynalite = require('dynalite'),
    dynaliteServer = dynalite({createTableMs: 50})

// Listen on port 4567
dynaliteServer.listen(4567, function(err) {
  if (err) throw err
  console.log('Dynalite started on port 4567')
})

Installation

With npm do:

$ npm install dynalite

TODO

  • Add config settings, especially for the table delays and strict checking
  • Allow for different persistence types (LevelDOWN-Hyper, etc)
  • Use efficient range scans for Query calls
  • Implement ReturnItemCollectionMetrics on all remaining endpoints
  • At what point does BatchGetItem#UnprocessedKeys get triggered?
  • Is the ListTables limit of names returned 100 if no Limit supplied?