A no-frills active record implementation for node-mysql.
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
lib
tests
.eslintignore
.eslintrc
.gitignore
.npmignore
.travis.yml
CHANGELOG.md
LICENSE.txt
README.md
package.json

README.md

Quell

Quell is a MySQL Active Record solution for NodeJS based on Backbone.Model.

Quell does not support joins. It is built to manage individual records in a database on a per-row basis.

Quell does not manage table schema, but will automatically load schema and sanitize input against table column types.

NPM version Licensed MIT Nodejs 4+ Downloads Build Status

##Installation

NPM: npm install mysql quell

Quell is built to work with connection pools from node-mysql and mysql2.

##Usage

var mysql = require('mysql');
var pool = mysql.createPool({ /* MySQL Connection Settings */});

var quell = require('quell');

var Book   = quell('books', { connection: pool });
var Author = quell('authors', { connection: pool });

var tperry = new Author({
  firstname: 'Terry',
  lastname: 'Pratchett'
});

var nightWatch = new Book({
  title: 'Night Watch'
});

tperry.save().then(function () {
  nightWatch.set('authorid', tperry.get('id'));
  return nightWatch.save();
});

Visit quelljs.com for documentation.

##Running Unit Tests

From inside the repository root, run npm install to install the test dependencies.

Run npm run test:unit to run just unit tests.

Run npm run test:int to run integration tests. Note, running the integration test requires a mktmp.io account configuration.

Run npm run test:cover to run all tests with code coverage.

Run npm run lint to validate ESLint rules.

npm test runs all of the above.