Dogfooding - transitive verb - is the practice of an organization using its own product. This app was created to help us learn.
Please take note: the wallet is not an official product by ECC, but rather a tool for learning about our libraries that it is built on. This means that we do not have robust infrasturcture or user support for this application. We open sourced it as a resource to make wallet development easier for the Zcash ecosystem.
iOS wallet using the Zcash iOS SDK that is maintained by core developers.
There are some known areas for improvement:
- Traffic analysis, like in other cryptocurrency wallets, can leak some privacy of the user.
- The wallet might display inaccurate transaction information if it is connected to an untrustworthy server.
See the Wallet App Threat Model for more information about the security and privacy limitations of the wallet.
- make sure you can build ZcashLightClientKit Demo Apps successfully
-
Clone the project, make sure you have the latest Xcode Version
-
Create
env-vars.sh file
at${SRCROOT}
See Instructions -
make sure that your environment has the variable
ZCASH_NETWORK_ENVIRONMENT
set toMAINNET
orTESTNET
. -
Navigate to the wallet directory where the
Podfile
file is located and runpod install
-
open the
wallet.xcworkspace
file -
locate the
.params
files that are missing in the project and include them at the specified locations -
build and run on simulator.
if you see this message when building:
No network environment. Set ZCASH_NETWORK_ENVIRONMENT to MAINNET or TESTNET
make sure your dev environment has this variable set before the build starts. DO NOT CHANGE IT DURING THE BUILD PROCESS.
If the variable was properly set after you've seen this message, you will need to either a) set it manually on the pod's target or b) doing a clean pod install and subsequent build.
- on your workspace, select the Pods project
- on the Targets pane, select ZcashLightClientKit
- go to build settings
- scroll down to see ZCASH_NETWORK_ENVIRONMENT and complete with TESTNET or MAINNET