reheat

A red hot Node.js ORM for RethinkDB.

Current Version: 1.0.0-beta.10 (Supports RethinkDB 1.15.x and newer)

A red hot Node.js ORM for RethinkDB.

You can use it, but be prepared to keep a close eye on the changelog.

All documentation can be found at http://reheat.pseudobry.com/.

Reheat is an ORM for RethinkDB, built for the Node.js platform.

  • Less code to write
  • Less code to test
  • Less code to maintain
  • Less code that can break
  • Improved sense of well-being
  • Connection pool
  • Easy Model lifecycle setup/access (beforeUpdate(), afterDestroy(), etc.)
  • Robust and flexible Schema definition for your Models
  • Automatic validation based on Schema
  • Convert req.query to ReQL query (great for your app's API).
  • Query builder (it's just ReQL, easy!)
  • Connection and Schema can each be used on their own
  • Relationships/Associations
  • Transactions (and rollbacks)
  • Migrations
  • You tell me!

From the RethinkDB website:

An open-source distributed database built with love.

Enjoy an intuitive query language, automatically parallelized queries, and simple administration.

Table joins and batteries included.

RethinkDB is awesome and ReQL makes data access fun, but still, who loves writing tons of code to pull data into and out of a database? Reheat exists to eliminate boilerplate and level up your RethinkDB experience!

npm install reheat --save

var reheat = require('reheat');
 
var connection = new reheat.Connection({
    db: 'local'
});
 
var Post = reheat.defineModel('Post', {
    tableName: 'post',
    connection: connection
});
 
var post = new Post({
    author: 'Jason Dobry',
    title: 'How to reheat your app'
});
 
post.isNew(); // true 
 
post.save().then(function (post) {
    post.toJSON();  //  { 
                    //      id: '1c83229b-1628-4098-a618-abc05af1ebdb', 
                    //      author: 'Jason Dobry', 
                    //      title: 'How to reheat your app' 
                    //  } 
 
    post.isNew();   //  false 
});

Getting Started - Read how to install reheat and get it running in your application.

Guide - List of tutorials on how to use reheat.

API - Reference API documentation for reheat.

Mailing List - Ask questions and get help.

Issues - Found a bug? Feature request? Submit an issue!

GitHub - View the source code for reheat.

BranchMaster
Version
Sourcemaster
Build Status
Code Climate
Dependency Status
Coverage

MIT License

Copyright (C) 2013-2014 Jason Dobry

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.