js.syncbase: mojo.syncbase: syncbase+mojo: implement batches

Also updates JavaScript impl so that Mojo and JS impls:
- mirror one another, which will make them easier to maintain
- use subclassing for Database/BatchDatabase, which will result
in better dartdoc/jsdoc

MultiPart: 2/3

Change-Id: I32ee60fe585ac25341ba89f50356f99d3c328cc6
13 files changed
tree: d07c5937961dee9c2f19b1a1bf2e7120fbdd16d0
  1. jsdocs/
  2. src/
  3. test/
  4. .gitignore
  5. .jshintignore
  6. .jshintrc
  7. AUTHORS
  8. CONTRIBUTING.md
  9. CONTRIBUTORS
  10. LICENSE
  11. Makefile
  12. package.json
  13. PATENTS
  14. README.md
  15. VERSION
README.md

Syncbase JavaScript Client

This repository defines the JavaScript API for Syncbase, a structured store that supports peer-to-peer synchronization.

The client APIs defined here work both in Node.js and the browser.

Install

npm install --save vanadium/js.syncbase

Usage

Documentation for this API is [TODO(aghassemi)](LINK TO JS DOCUMENTATION)

Tutorials can be found at [TODO(aghassemi)](LINK TO JS TUTORIAL FOR SYNCBASE)

The entry point to the API is through a module called syncbase, everything else is considered private and should not be accessed by the users of the API.

When using Browserify or Node.js users can gain access to the API with:

var syncbase = require("syncbase");

When run in a browser, syncbase expects that the vanadium extension will be installed.

Bugs and feature requests

Bugs and feature requests should be filed in the Vanadium issue tracker.

Building and testing

GNU Make is used to build and test Syncbase.

Build everything:

make

Test everything:

make test

Run a specific test suite:

make test-integration
make test-integration-node
make test-integration-browser

Remove all build and testing artifacts:

make clean