Tonomy ID is the cross-platform mobile wallet (Android and iOS) for public and private Antelope blockchains. This application allows you to sign transactions on the block chain, share your DID and Verifiable Credentials containing your identity with others in a consensual way and log into web2 and web3 applications. If you lose your phone several mechanisms exist to allow you to recover your account without trusting anyone with custody of your private keys.
Tonomy ID is a React Native application in typescript.
MAKE SURE YOU ARE WORKING FROM THE DEVELOPMENT
BRANCH!!!
MAKE SURE YOU ARE WORKING FROM THE DEVELOPMENT
BRANCH!!!
yarn
This is to create an expo build so you can down an .apk
or .ipa
file from https://expo.dev which you can use to run the app. You can't Run from the Official Expo App.
export EXPO_FIRST_TIME=true
"projectId"
in prepare.app.config.ts
to the vale of the "Project ID"
in https://expo.devyarn run build:ios:create
to create a device profile for your phoneyarn run build:ios
(ios) or yarn run build:android
(android) to build the app for your phoneHaving issues here or running the app? Checkout:
https://github.com/Tonomy-Foundation/Tonomy-ID-Integration/blob/development/TROUBLESHOOT.md
MAKE SURE YOU ARE WORKING FROM THE DEVELOPMENT
BRANCH!!!
You NEED to follow the above Pre-run build
steps above before you can start the app!
yarn run start
Testing Staging / Demo Tonomy ID locally without needing to wait for deploy to Play store. This has the advantage of being able to see logs inside Tonomy ID as it runs
"appName": "Tonomy ID Development"
in config.staging.json
or config.demo.json
EXPO_NODE_ENV=staging yarn run start
or EXPO_NODE_ENV=demo yarn run start
This is now running in production mode connected to the staging environment.
adb logcat *:S ReactNative:V ReactNativeJS:V
or ./adb.exe logcat*:S ReactNative:V ReactNativeJS:V
in the command line to catch debug messages of reactNative only. Try adb logcat -s ReactNative:V ReactNativeJS:V
if that doesn't work.yarn run updateSdkVersion development
# or
yarn run updateSdkVersion master
https://learn.habilelabs.io/best-folder-structure-for-react-native-project-a46405bdba7
Set the configuration variables in the desired file in ./src/config
config.json
is used by default. Staging config file is choosing based on the value of environment variable EXPO_NODE_ENV
Values for EXPO_NODE_ENV
./src/config/config.json
development
. this is set when yarn run test
is rundevelopment
. this resolves the @tonomy/tonomy-id-sdk
package to the local repository at ../Tonomy-ID-SDK
which is used for the Tonomy-ID-Integration
repository when locally testing all software together../src/config/config.demo.json
./src/config/config.staging.json
Values for EXPO_PLATFORM
prepare.app.config.ts
to configure app for Androidprepare.app.config.ts
to configure app for iOSOther environment variables override the values in the config file:
Linting is done with eslint
. Install the recommended VS Code plugin to see markers in your code.
yarn run lint
See errors.ts. All errors have a registered unique code enum.
Origin not found
You might be running in stand-alone mode and trying to complete the SSO loin flow. This is not possible stand-alone mode.
FIX: Run Tonomy ID using ./app.sh
with the Tonomy ID Integration repository.
Release versioning is done automatically with https://github.com/marketplace/actions/automated-version-bump. This will do a major, minor or patch release based on words in the commits. See Workflow for details.