TBR reader: adds basic syncbase support

This CL adds very rough syncbase setup. To run syncbase use:

    make syncbase

This will start a syncbased process which will mount long with the app:

    user/<email>/reader/:id/app
    user/<email>/reader/:id/syncbase

The app will initialize syncbase if it hasn't been set up already with:

    user/<email>/reader/:id/syncbase/reader/db/data-sets

And will store key/vlaue pairs with:

    user/<email>/reader/:id/syncbase/reader/db/data-sets/:key

Closes #8

Change-Id: I436b3ab4e36c42f0aa208159f2fc55a7d0cd36f5
11 files changed
tree: f1d3eb8be35cab27c9169057ad9a0752f0234da0
  1. bin/
  2. browser/
  3. lib/
  4. public/
  5. test/
  6. .gitignore
  7. .jshintignore
  8. .jshintrc
  9. .v23ignore
  10. AUTHORS
  11. CONTRIBUTORS
  12. LICENSE
  13. Makefile
  14. package.json
  15. PATENTS
  16. README.md
  17. VERSION
README.md

Reader

An example PDF reader using Vanadium.

Development

Dependencies

If you have a $V23_ROOT setup you can install Node.js from $V23_ROOT/third_party by running:

v23 profile install nodejs

Optionally, it is possible to use your own install of Node.js if you would like to use a more recent version.

Building

The Makefile is setup to handle all dependencies once Node.js is installed. The default make task will install any modules listed in the package.json and build a browser bundle from browser/index.js via browserify.

make

It is possible to have the build happen automatically anytime a JavaScript file changes using the watch tool:

watch make

Running locally

To run a local dev server use:

make start

If you would like to change the host and or port that is used:

make start port=<port> host=<host>

Run syncbase with:

make syncbase

This will automatically have you set up credentials etc. If you want to remove stored data & credentials use:

make clean