A browser based, platform agnostic mobile application development and testing tool.
All source code (excluding third party libraries) are subject to:
Copyright (c) 2011 Research In Motion Limited
All assets in this repository, unless otherwise stated through sub-directory LICENSE or NOTICE files, are subject to the Apache Software License v.2.0.
In particular, the assets under assets/*/images
are excluded from the Apache Software License v.2.0. Please see the NOTICE file for more details.
- nodejs, npm
- OSX or linux (windows is not currently supported for development)
If you plan to dive into the source, be sure to check out the HACKING file.
To get started, you need to setup a few things, first- run (in the project root):
./configure
This script will pull down the needed npm packages and initialize the submodules.
jake
This will build ripple to the pkg/
folder. In that folder there are various targets that can be used.
jake -T
This will describe all the available commands for building and running the tests, etc.
- Go to the extension management page (chrome://chrome/extensions/) in chrome.
- Ensure that you have selected the developer mode checkbox.
- Click the Load Unpacked extension button.
- Select the
pkg/chrome.extension
folder.
NOTE: For development you should be fine to just build with jake and refresh your browser. If you end up editing anything in the ext folder you will need to refresh the extension from the extension management page.
For more information see doc/chrome_extension.md.
Ripple is (by-design) browser agnostic, and is able to run inside any web browser (with disabled web security).
However, this has (for the most part) only been used in Chrome (and as a result certain things are used that are not supported/tested in other browsers).
If you want to run it inside other browsers, you will need to use the pkg/web
target. This is essentially a standalone version of the UI.
Note: This is not actively maintained, and may not work as expected.
To get it running inside Chrome you should start it with these command line flags:
--app=http://path/to/ripple-ui/pkg/web
--disable-web-security
--user-data-dir=/path/to/dummy/profile
There is a command line interface that can be paired with the client (UI).
It can be used for various things, such as statically hosting an application, and running a local (cross origin) XHR proxy.
Eventually, this will be available on the NPM registry. For now (to install):
git clone git@github.com:blackberry/Ripple-UI.git ripple
cd ripple
./configure
jake
npm install -g pkg/npm
This will install a global script called ripple
. To see usage, run:
ripple help
Note: If you don't want to use NPM, you can just do this:
node pkg/npm/bin/ripple help
The master
branch is the latest (stable) release. The next
branch is where all development happens.
If you like the project, and want to contribute code, please issue a pull request (on GitHub) into the next
branch.
Note: You will need to be an official contributor before your code can be accepted.
- 4 spaces per editor tab.
jake lint
, no new lint errors introduced.- All unit tests are green.
You can also find associated reference material for the Ripple tool as well as contributor forums at the following locations.