The lightwallet development environment consists of:
- Merit Wallet Service
- Merit-Node
- Insight-api
- (Optionally) Insight-ui
- Lightwallet for mobile, desktop and web
Make sure the following conditions are met
- GNU/Linux x86*32/x86_64, or OSX 64bit *(for meritd distributed binaries)_
- ZeroMQ (libzmq3-dev for Ubuntu/Debian or zeromq on OSX)
- GNU Make version 4.2.1
- The lightwallet-stack stably tested on Node.js >= v4.8.4
- MacOS USERS WILL NEED INSTALL THE LATEST XCODE AND ALL UPDATES
Read https://github.com/meritlabs/merit/blob/master/doc/build-osx.md
brew install make- Alias your system
maketo usegmakeor addgmaketo your path.
# ~/.bash_profile
alias make='/usr/local/Cellar/make/4.2.1_1/bin/gmake'When deploying to staging, add a LW_STAGING=true environment variable before running deploy
To deploy either lightwallet (web), run ./deploy.sh
- It will prompt you for if you want to deploy mobile or desktop lightwallet.
- It will also ask if you want to deploy to production.
To deploy in unattended mode, run ./deploy.sh -e <environment> -t <target>
- Environment can be either
stagingorproduction - Target can either be
mobileordesktop
# install ZeroMQ
sudo apt install -y libzmq3-dev
# install make
sudo apt install -y make
# install g++
sudo apt install -y build-essential g++
You need Lerna to manage cross dependencies while still allowing us to publish packages.
- Ubuntu USERS NEED TO RUN THIS COMMAND AS ROOT
make prepare-prereqsMerit Wallet Service uses MongoDB
$ brew install mongodb
$ sudo mkdir -p /data/db
$ sudo chmod 0755 /data/db && sudo chown $USER /data/db
$ sudo chmod 0755 /data/ && sudo chown $USER /data/cd merit-labs/lightwallet-stack/
make start-mongo
make stop-mongoRun these in the order listed.
make prepare-stack
cp packages/lightwallet/mobile/src/environments/environment.example.ts packages/lightwallet/mobile/src/environments/environment.dev.ts
cp packages/lightwallet/mobile/src/environments/environment.example.ts packages/lightwallet/mobile/src/environments/environment.ts
# here you may want to edit your environment.dev.ts file to modify URLs
make start-lightwallet-stackmake prepare-stack
cp packages/lightwallet/mobile/src/environments/environment.example.ts packages/lightwallet/mobile/src/environments/environment.dev.ts
cp packages/lightwallet/mobile/src/environments/environment.example.ts packages/lightwallet/mobile/src/environments/environment.ts
# here you may want to edit your environment.dev.ts file to modify URLs
make start-lightwalletmake prepare-stack
make start-desktop-lightwalletmake start-merit-nodemake start-merit-nodeshould be runningmake symlink-merit-nodeshould be symlinked
cd merit-labs/lightwallet-stack/
./merit-node/merit-node/bin/merit-node call {merit-node/lib/services/meritd.js rpc_command_here}For beautifying and improving semantic value of the branches, we decided to use the following list of the branch prefixes:
feature/name-of-the-featurefix/name-of-the-fixhotfix/name-of-the-hotfixchore/name-of-the-job
All new prefixes should be discussed with the community before being added to the ecosystem.
Please, check out our Contribution guide and Code of Conduct.
Code released under the MIT license.
Copyright (C) 2013 - 2017 BitPay, Inc. Copyright (c) 2017 - 2021 The Merit Foundation.