ALPHA version! This is heavily under construction, not ready for real usage.
Use node v8.9.x
and npm v5.6.x
.
Mac OS note: You might need realpath
, install it through coreutils:
brew update
brew install coreutils
npm install --global react-native-cli
npm install
Build the "backend" Node.js project:
npm run build-rnnodeapp
Build the worker thread subproject:
npm run build-worker-android
Then build the entire app:
react-native run-android
- React Native
- TypeScript
- Cycle.js with xstream
- Pull streams
- react-native-scuttlebot
- Uses react-native-node under the hood
- Which in turn uses NodeBase (node.js v7 compiled for android arm devices)
- Uses react-native-node under the hood
- react-native-workers (fork by staltz)
- react-native-ssb-client
- Patchcore (with depject)
We use Appium and Tape, just plug in a device through USB and run npm run test-e2e-android
. This will run tests on top of the release variant of the app, so it that doesn't exist, you must run npm run android-release
first.
To build a release APK, follow these instructions, in short:
- Put the correct file
my-release-key.keystore
in the folderandroid/app/
- Configure the file
~/.gradle/gradle.properties
with the correct values