Skip to content
A node.js based declarative, data-retrieval and aggregation gateway for quickly consuming HTTP APIs
JavaScript Shell
Latest commit 1899183 Apr 24, 2013 @hochang hochang Merge pull request #589 from hochang/master
join test connector name change engine comments is a declarative, data-retrieval and aggregation gateway for quickly consuming HTTP APIs. See for docs, demos and examples.

Travis status

How to Build

To build on your own, you need node (version 0.8.0 or later) and npm. In Ubuntu, you need libexpat-dev additionally. Once you have these set up, do the following:

git clone git://
make install

Note If you get "ERR! Error: EACCES, Permission denied" errors, please take a look at npm issue #194 and what-no-sudo.

These steps will link modules locally so can you refer to those modules from your apps using npm link.

To run tests

make test source is organized into several modules that you can test independently.

cd modules/engine
make test

Using as a Stand-Alone Server

If you are interested in using as a stand-alone server, setup a new app and start the server.

mkdir myapp
cd myapp
curl | bash

Using latest versions of Firefox or Chrome, go to http://localhost:3000 to see's Web Console. See the Quickstart Guide for more details.

Using in a Node App

If you are interested in using in your node app, use

npm install

After that you can simply execute the core engine.

var Engine = require('');
var engine = new Engine({
    connection: 'close'

var script = "create table geocoder " +
             "  on select get from '{address}&sensor=true' " +
             "     resultset 'results.geometry.location'" +
             "select lat as lattitude, lng as longitude from geocoder where address='Mt. Everest'";

engine.execute(script, function(emitter) {
    emitter.on('end', function(err, res) {

Making Contributions

Fixes and features via pull requests are welcome as long as the contributor agrees to the Contributor License Agreement. Print, sign, and email a scanned copy to subbu/AT/ebaysf/DOT/com before submitting the first pull request.

To help move pull requests quickly, consider socializing your idea in the email group.


Subscribe to the google group.

Something went wrong with that request. Please try again.