Git Product home page Git Product logo

dynamoose's Introduction

Dynamoose Build Status

Dynamoose is a modeling tool for Amazon's DynamoDB (inspired by Mongoose)

Getting Started

Installation

$ npm install dynamoose

Example

Set AWS configurations in enviroment varable:

export AWS_ACCESS_KEY_ID="Your AWS Access Key ID"
export AWS_SECRET_ACCESS_KEY="Your AWS Secret Access Key"
export AWS_REGION="us-east-1"

Here's a simple example:

var dynamoose = require('dynamoose');

// Create cat model with default options
var Cat = dynamoose.model('Cat', { id: Number, name: String });

// Create a new cat object
var garfield = new Cat({id: 666, name: 'Garfield'});

// Save to DynamoDB
garfield.save();

// Lookup in DynamoDB
Cat.get(666)
.then(function (badCat) {
  console.log('Never trust a smiling cat. - ' + badCat.name);
});

API Docs

The documentation can be found at https://dynamoosejs.com/api.

Change log

Release 0.8

  • useNativeBooleans #55
  • saveUnknown #125
  • Support for multiple indexes defined on the hashkey attribute of the table
  • scan.all() #93 #140
  • scan.parallel d7f7f77
  • TTL support 92994f1
  • added schema parsing overrides #145
  • populate #137
  • Added consistent() to scan. #15 #142
  • Default function enhancements #127
  • Create required attributes on update #96
  • Add typescript typings #123
  • Added .count() for Query and Scan #101
  • Nested scans #141 #158

Roadmap

Release 0.9

The goal of release 0.9 is to increase the parity with mongoose. The primary purpose will be to come up with a plugin system similar to that of mongoose although not necessarily compatible.

  • Plugin system
  • Model.find alias
  • Complete .populate support

Release 1.0

The main goal of 1.0 will be to improve the code and refactor to ES2015 (ES6). In addition, useNativeBooleans and useDocumentTypes will be toggled to make uses of "newer" DynamoDB features by default.

  • ES2015 updates
  • Switch to ESLint
  • Set useNativeBooleans and useDocumentTypes to default to true

dynamoose's People

Contributors

againer avatar aloof-ruf avatar andybee avatar asue avatar brandongoode avatar breath103 avatar cbarrese avatar darthapple avatar dropdevcoding avatar ehippy avatar fishcharlie avatar i1skn avatar joshuadutton avatar jottinger avatar jutaz avatar jz-at-tp avatar khamasaki avatar lrcry avatar lucianopf avatar mogwai avatar mooyoul avatar nealshail avatar remmons avatar ricardopinto avatar strygin avatar treyhuffine avatar troyswanson avatar tuxmachine avatar webwin0 avatar zarov avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.