Giter VIP home page Giter VIP logo

edgeapp / edge-react-gui Goto Github PK

View Code? Open in Web Editor NEW
453.0 27.0 255.0 205.45 MB

Edge React Native GUI for iOS and Android

Home Page: https://edge.app

License: BSD 3-Clause "New" or "Revised" License

JavaScript 0.23% Java 0.30% Objective-C 0.01% Shell 0.19% Ruby 0.07% HTML 0.01% Swift 0.15% TypeScript 98.73% Objective-C++ 0.16% Kotlin 0.14%
bitcoin wallet ethereum litecoin react-native gui dash bitcoin-cash

edge-react-gui's Introduction

Edge

Build Status

A multi-currency mobile wallet for Bitcoin, Ethereum, Monero, Dash, Litecoin, Bitcoin Cash, Ripple/XRP, Polkadot, Tron, Solana, Stellar, Fantom, Algorand, Optimism, Zcash, Pirate Chain, and many others

Edge Screenshots

Edge is:

  • simple
  • secure
  • private
  • decentralized
  • multi-currency
  • cross-platform
  • mobile first
  • open source

Getting Started

Prepare React Native Development Tools

The React Native documentation contains detailed instructions on how to prepare your computer for React Native development. Follow the instructions in the "React Native CLI Quickstart" for your specific platform.

If you are using a Mac, follow both the iOS and Android target instructions. Otherwise, you only need the Android target instructions.

Install Yarn

This project uses Yarn to manage Javascript dependencies:

https://yarnpkg.com

Do not use NPM to install dependencies, since that will not work.

Checkout develop branch & install node_modules

cd edge-react-gui
yarn
yarn prepare

Run the bundler

yarn start

This bundler process needs to run in the background, so feel free to run this in its own terminal window.

Add API key in env.json

A public API key is built into the edge-core-js which can be used to build and test the Edge app. This key is severely rate limited and should not be used for production. For production use, get an API key by emailing [email protected].

Change the AIRBITZ_API_KEY in env.json to the API key you received from Edge. To use the public API key, leave AIRBITZ_API_KEY blank.

Run the app in debug mode

iOS

  • Run yarn prepare.ios to generate the CocoaPods files. You will need to do this after the first install, and any time Xcode produces a The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation. error.
  • Open edge-react-gui/ios/edge.xcworkspace in Xcode
  • Choose a target device or simulator and tap the Play button on the top nav bar

Android

To build, install, and start the app on a simulator or physical phone with USB debugging, run:

yarn android

Otherwise, to get an APK, do:

cd android
./gradlew assembleDebug
  • The resulting APK will be in ./app/build/outputs/apk/debug/app-debug.apk
  • Copy the APK to a simulator like Genymotion or a real device via Email or messaging app

Build release version of app

iOS

  • Open edge-react-gui/ios/edge.xcworkspace in Xcode
  • Hold [ option/alt ] and click on the Edge button on the top bar to the right of the Play and Stop icons.
  • Change 'Build Configuration' to Release
  • Uncheck 'Debug Executable'
  • Close window
  • Choose a device and hit Play

Android

cd android
./gradlew assembleRelease
  • The resulting APK will be in ./app/build/outputs/apk/release/app-release.apk
  • Copy the APK to a simulator like Genymotion or a real device via Email or messaging app

Deploying (MacOS Only)

This repo includes several utility scripts that can be used in a CI/CD environment to build and deploy a release version of the app. The included Jenkinsfile utilizes all the scripts but you are free to use them in your own CI environment.

Update the version file

Set BUILD_REPO_URL to the URL of an empty Git repo that will hold a version file that will be auto updated to increment the version and build number. Then run the following to update a local release-version.json file

yarn gitVersionFile

Update the project files based on the version in release-version.json

yarn updateVersion

Build, sign, and deploy

The included deploy.ts is a script to automate building, signing, and deploying release builds of Edge. It provides the following:

  • Auto sign Android APK with Android keystore files
  • Auto sign iOS IPA with provisioning profiles
  • Build release version of iOS and Android
  • Upload iOS IPA and Android APK files to AppCenter for developer testing

To Use

  • Set the env var KEYCHAIN_PASSWORD to the keychain password of the current user
  • Copy the deploy-config.sample.json to deploy-config.json and edit the parameters accordingly. You'll need a HockeyApp account to get ids and keys
  • Download a copy of the Google Bundle tool (https://github.com/google/bundletool/releases)
  • Set the bundleToolPath in deploy-config.json to the path to the bundle tool .jar file
  • Put any Android keystore files into edge-react-gui/keystores/
  • If using Firebase, put your account's google-services.json and GoogleService-Info.plist into edge-react-gui/
  • Install xcpretty sudo gem install xcpretty

Run deploy

yarn deploy edge ios master
yarn deploy edge android master

Fastlane support

This repo supports utilizing Fastlane to automate updates to iOS Provisioning Profiles. To use Fastlane, set the following environment variables and run yarn deploy as mentioned above

BUILD_REPO_URL          // Git repo used to store encrypted provisioning
                        // keys.
                        // Will be shared with the gitVersionFile.ts script
FASTLANE_USER           // Apple ID email
FASTLANE_PASSWORD       // Apple ID password
GITHUB_SSH_KEY          // (Optional) SSH Key file to use when accessing
                        // BUILD_REPO_URL
MATCH_KEYCHAIN_PASSWORD // Password to unlock the current users keychain
MATCH_PASSWORD          // Password used to encrypt profile information
                        // before being saved to the BUILD_REPO_URL

Debugging

As with any modern React Native app, Flipper is the officially-supported debugging app. Use the "React Native Hermes Debugger" to debug Javascript running in the UI.

If you want to inspect Redux, you can install the redux-debugger plugin for Flipper, which this app supports.

Contributing

Please follow the coding conventions defined in Edge Conventions

edge-react-gui's People

Contributors

ahujsak avatar alex0735070005 avatar amanalili avatar andreyveze avatar dbo1dyrev avatar dependabot[bot] avatar goodluckh avatar itay747 avatar itayplav avatar jacobburrell avatar jamesrisberg avatar johnnyjumper avatar jon-edge avatar koretskiyav avatar kylanhurt avatar luismartinez22 avatar madpaiement avatar passabilities avatar paullinator avatar peachbits avatar peterobrien avatar riordant avatar rjrs2k avatar safitudo avatar samholmes avatar sfncook avatar swansontec avatar thehobbit85 avatar vsashyn avatar wolverineks avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

edge-react-gui's Issues

Question: run error: App ID length must be 32 characters

HI, thanks for your hard work.
i am a newbie for android and RN. when i run react-native run-android, i met this error

App ID length must be 32 characters.
sanitizeAppIdentifier
   Util.java:134
register
   FeedbackManager.java:145
register
   FeedbackManager.java:132
start
   RNHockeyAppModule.java:86
invoke
   Method.java
invoke
   JavaMethodWrapper.java:374
invoke
   JavaModuleWrapper.java:162
run
   NativeRunnable.java
handleCallback
   Handler.java:739
dispatchMessage
   Handler.java:95
dispatchMessage
   MessageQueueThreadHandler.java:31
loop
   Looper.java:148
run
   MessageQueueThreadImpl.java:194
run
   Thread.java:818

make yourself a billionaire

need to lock down the etherscan api to scan the contract addr fir params yo make it so you cant ne a billionaire.
I stumbled upon this by thinking some tokens were 18 decimals, I then made the mess decimals than they were which "awarded me with billions" fun trick, bad bug

Project build Windows

Windows x64
yarn 1.6.0
npm 5.6
Node 8.11.1
Android SDK v26.0.2
Windows build tools (v140) + Python27
OpenSSL 1.0.2o 27 Mar 2018

If I try to install packages via npm and "npm run android:release-install" then other issues appear

:app:mergeReleaseResources
:app:bundleReleaseJsAndAssets
Scanning folders for symlinks in C:\Users\Igor Igorevich Kim\Desktop\edge-react-gui\node_modules (116ms)
Scanning folders for symlinks in C:\Users\Igor Igorevich Kim\Desktop\edge-react-gui\node_modules (129ms)
Loading dependency graph, done.
warning: the transform cache was reset.

Unable to resolve module bcoin from C:\Users\Igor Igorevich Kim\Desktop\edge-react-gui\node_modules\edge-currency-bitcoin\lib\index.js: Module does not exist in the module map or in these directories:
C:\Users\Igor Igorevich Kim\Desktop\edge-react-gui\node_modules

This might be related to facebook/react-native#4968
To resolve try the following:

  1. Clear watchman watches: watchman watch-del-all.
  2. Delete the node_modules folder: rm -rf node_modules && npm install.
  3. Reset Metro Bundler cache: rm -fr $TMPDIR/react-* or npm start -- --reset-cache.

:app:bundleReleaseJsAndAssets FAILED

FAILURE: Build failed with an exception.

  • What went wrong:
    Execution failed for task ':app:bundleReleaseJsAndAssets'.

Process 'command 'cmd'' finished with non-zero exit value 1

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

  • Get more help at https://help.gradle.org

BUILD FAILED in 3m 14s
228 actionable tasks: 227 executed, 1 up-to-date
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] android:release: cd android && gradlew assembleRelease && cd ../
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] android:release script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Igor Igorevich Kim\AppData\Roaming\npm-cache_logs\2018-04-23T05_31_44_968Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] android:release-install: npm run android:clean && npm run android:release && cd android/app/build/outputs/apk && adb install app-release.apk; cd ../
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] android:release-install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Igor Igorevich Kim\AppData\Roaming\npm-cache_logs\2018-04-23T05_31_45_003Z-debug.log

and this thing appear after I had installed bcoin "manually" by "yarn add bcoin"

TransformError: C:\Users\Igor Igorevich Kim\Desktop\edge-react-gui\node_modules\bcoin\lib\bcoin.js: require() must have a single string literal argument: C:\Users\Igor Igorevich Kim\Desktop\edge-react-gui\node_modules\bcoin\lib\bcoin.js:139

:app:bundleReleaseJsAndAssets FAILED

Exchange rates delay

The exchangeRates action seems to be returning all 0's for roughly 2 minutes after initial login, leaving the wallet on getting exchange rates. This behaviour has developed/worsened over the past couple of days.

Add Unstoppable Domain Addresses

Please add support for using unstoppable domains names as cryptocurrency addresses you can enter in to send payments to. Unstoppable domains allow you to send crypto to .zil and .crypto domain names.

Can not install repositories

I cloned this project and did "npm install".
However, It is always stopped after few seconds, but progress bar always shown and not continue anymore.

Stopped at this progress.

fetchMetadata: sill pacote range manifest for parse-passwd@^1.0.0 fetched in 226ms

Ruby Gem Information Required

In the setup it says:

sudo gem install cocoapods

However it does not indicate anywhere which version of ruby is installed or which ruby package manager is being used.

Please update readme.

Dark mode

This would be a huge usability improvement for those of us who don't like our coins with a side of singed eyes.

Consider removing dependencies on Google Play Services

Could you please consider removing the dependencies on Google Play Services. Services like f-droid.org and "The Yalp Store" make it possible to use Android without a Google Play account and therefore avoids much of the illegal spying and privacy problems introduced by Google. When I started the Edge wallet on Android it unfortunately showed me a dialog saying that it depends on Google Play services and stated that it will not work.

On another note, thank you for notifying me in advanced about this before I tried to deposit funds..

UI bug: TX list is covered by footer bar on Android

🀞 this is the right place to put this:

I am unable to view (although the div is visible enough to click) the last entry in all wallets - it is covered by the footer bar with the wallet, request, ... As seen here:

image

Device: Android 7.1.1 , Moto Play G

Xcode 11 not building

Getting error:
"clang: error: no such file or directory: '/Users/zoisavgerinos/Code/edge-react-gui-develop/node_modules/bugsnag-react-native/cocoa/vendor/bugsnag-cocoa/Source/KSCrash/Source/KSCrash/Recording/Sentry/BSG_KSCrashSentry_Deadlock.m'"

postinstall.js failing due to Detox framework

When performing yarn on a clean install, I encounter a Detox framework issues.

Command: node scripts/postinstall.js

Arguments:
Directory: /edge-react-gui/node_modules/detox

Output:
/Library/Detox/ios/3b8bf121e33a47a46e6d2ca92c7d743d2d56b3cf was found, but could not find Detox.framework inside it. This means that the Detox framework build process was interrupted.
deleting /Library/Detox/ios/3b8bf121e33a47a46e6d2ca92c7d743d2d56b3cf and trying to rebuild.
Extracting Detox sources...
Building Detox.framework from /edge-react-gui/node_modules/detox/ios_src...
child_process.js:644
throw err;
^

Error: Command failed: /edge-react-gui/node_modules/detox/scripts/build_framework.ios.sh
at checkExecSyncError (child_process.js:601:13)
at Object.execSync (child_process.js:641:13)
at Object. (/edge-react-gui/node_modules/detox/scripts/postinstall.js:2:27)
at Module._compile (module.js:652:30)
at Object.Module._extensions..js (module.js:663:10)
at Module.load (module.js:565:32)
at tryModuleLoad (module.js:505:12)
at Function.Module._load (module.js:497:3)

Environment Details
MacOS Mojave 10.14
Xcode 10
NodeJS 8.11.3
NPM 6.4.1
Yarn 1.10.1
Java 1.8.0_181

a problem on npm install

I had an issue where npm install froze as follows:
`
npm WARN deprecated [email protected]: connect 2.x series is deprecated
npm WARN deprecated [email protected]: Please update to the latest object-keys

[email protected]

preinstall /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/scrypt
node node-scrypt-preinstall.js

[email protected] install /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/bcoin-native
node-gyp rebuild

gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: This is most likely not a problem with node-gyp or the package itself and
gyp ERR! stack is related to network connectivity. In most cases you are behind a proxy or have bad
gyp ERR! stack network settings.
gyp ERR! stack at Request. (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/install.js:193:21)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at Request.emit (events.js:211:7)
gyp ERR! stack at Request.onRequestError (/usr/local/lib/node_modules/npm/node_modules/request/request.js:878:8)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at ClientRequest.emit (events.js:211:7)
gyp ERR! stack at TLSSocket.socketErrorListener (_http_client.js:387:9)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at TLSSocket.emit (events.js:211:7)
gyp ERR! stack at emitErrorNT (internal/streams/destroy.js:64:8)
gyp ERR! System Darwin 16.7.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/bcoin-native
gyp ERR! node -v v8.9.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok

[email protected] install /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/keccak
npm run rebuild || echo "Keccak bindings compilation fail. Pure JS implementation will be used."

[email protected] rebuild /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/keccak
node-gyp rebuild

gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: This is most likely not a problem with node-gyp or the package itself and
gyp ERR! stack is related to network connectivity. In most cases you are behind a proxy or have bad
gyp ERR! stack network settings.
gyp ERR! stack at Request. (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/install.js:193:21)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at Request.emit (events.js:211:7)
gyp ERR! stack at Request.onRequestError (/usr/local/lib/node_modules/npm/node_modules/request/request.js:878:8)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at ClientRequest.emit (events.js:211:7)
gyp ERR! stack at TLSSocket.socketErrorListener (_http_client.js:387:9)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at TLSSocket.emit (events.js:211:7)
gyp ERR! stack at emitErrorNT (internal/streams/destroy.js:64:8)
gyp ERR! System Darwin 16.7.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/keccak
gyp ERR! node -v v8.9.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] rebuild: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] rebuild script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /Users/admin/.npm/_logs/2018-04-21T12_14_12_139Z-debug.log
Keccak bindings compilation fail. Pure JS implementation will be used.

[email protected] install /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/fsevents
node install

[fsevents] Success: "/Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile

[email protected] install /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/scrypt
node-gyp rebuild

gyp WARN install got an error, rolling back install
gyp ERR! configure error
gyp ERR! stack Error: This is most likely not a problem with node-gyp or the package itself and
gyp ERR! stack is related to network connectivity. In most cases you are behind a proxy or have bad
gyp ERR! stack network settings.
gyp ERR! stack at Request. (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/install.js:193:21)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at Request.emit (events.js:211:7)
gyp ERR! stack at Request.onRequestError (/usr/local/lib/node_modules/npm/node_modules/request/request.js:878:8)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at ClientRequest.emit (events.js:211:7)
gyp ERR! stack at TLSSocket.socketErrorListener (_http_client.js:387:9)
gyp ERR! stack at emitOne (events.js:116:13)
gyp ERR! stack at TLSSocket.emit (events.js:211:7)
gyp ERR! stack at emitErrorNT (internal/streams/destroy.js:64:8)
gyp ERR! System Darwin 16.7.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/admin/Documents/edge-react-gui/edge-react-gui/node_modules/scrypt
gyp ERR! node -v v8.9.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm WARN [email protected] requires a peer of [email protected] but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of react@^16.2.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of [email protected] but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of react-native@^0.47.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of asyncstorage-down@>=3.0.0 <5.0.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of react-native@^0.47.0 but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of react@^15.5.4 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/bcoin-native):
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] install: node-gyp rebuild
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!
`

Dogecoin syncing

Two Dogecoin issues -

1 - During the syncing process on opening the app Dogecoin shows the balance of the wallet divided by 1000 with 0 decimal places. This then shows the correct balance once fully up to date.

2 - When running the app on an iPhone simulator Dogecoin never fully updates, and therefore shows the total balance as above.

This appears to be a change from the node end as opposed to updates to the edge yarn modules as previous versions of the app that did not display this before now do.

Won't connect to Bitcoin Electrum server over TLS

I'm trying to specify a custom node using an electrums:// URL, as suggested in the empty input field. I press save, then log out and in again, then try to resync my Bitcoin wallet. The wallet does not connect to the custom node, and the progress bar along the top of the screen is stuck around 10%.

If I try the same using an electrum:// URL, i.e. unsecured, it will connect.

Looking at the edge-currency-bitcoin code, it seems to ignore electrums:// entries.

Update for MyMonero in yarn.lock

Yarn points to github.com/Airbitz/mymoneo-core-js.git however this now seems to be located at github.com/EdgeApp/mymonero-core-js.git.

react-native run-ios error

on Mac OS: 10.13.6, I followed the README instructions, when executing

react-native run-ios,

I got this error

error: bundling failed: UnableToResolveError: Unable to resolve module `bcoin` from `/Users/hua/Projects/tmp/edge-react-gui/node_modules/edge-currency-bitcoin/lib/index.js`: Module does not exist in the module map or in these directories:
  /Users/hua/Projects/tmp/edge-react-gui/node_modules

Then I executed

I got the following

error: bundling failed: UnableToResolveError: Unable to resolve module `../binding` from `/Users/hua/Projects/tmp/edge-react-gui/node_modules/bcrypto/lib/native/cleanse.js`: could not resolve `/Users/hua/Projects/tmp/edge-react-gui/node_modules/bcrypto/lib/binding' as a file nor as a folder
    at ModuleResolver._loadAsFileOrDirOrThrow (/Users/hua/Projects/tmp/edge-react-gui/node_modules/metro-bundler/src/node-haste/DependencyGraph/ModuleResolution.js:337:11)

It seems that the dependency cannot work correctly on my machine, how to fix this?

Linux desktop build

Can you create a build for Linux?

The bitcoin.com Android / iOS wallet has a desktop build that looks and operates just like the Android version. It looks like they where able to wrap it for other platforms (see https://github.com/Bitcoin-com/Wallet releases, Assets).

yarn error: not found mymonero-core-js.git

hi:
when run yarn, i meet error:
error Command failed.
Exit code: 128
Command: git
Arguments: ls-remote --tags --heads git://github.com/Airbitz/mymonero-core-js.git
Directory: /Users/mac/EdgeApp/edge-react-gui
Output:
fatal: remote error:
Repository not found.

Buy & Manage Unstoppable Domain Names

Please allow users to buy unstoppable domains in the Edge app and to be able to add/remove addresses to the unstoppable domains within the app. This will be a great alternative to FIO and unstoppable domains are a one time purchase.

Please add Zilliqa too for the ability to buy and mange .zil domains
#2465

EDIT:
ZIL support is not really need as much since Unstoppable Domains now supports up to 9 different domain extensions that are available on the Ethereum blockchain which are

.crypto
.coin
.wallet
.bitcoin
.x
.888
.nft
.dao
.blockchain

Can't build project

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':react-native-fast-crypto:externalNativeBuildRelease'.
> java.io.FileNotFoundException: /home/zvs001/work/maya/vault-logic-wallet-mobile/node_modules/react-native-fast-crypto/android/.externalNativeBuild/cmake/release/armeabi-v7a/android_gradle_build.json (No such file or directory)

[Feature] F-Droid Listing

Basic Information

F-Droid URL: https://f-droid.org/
F-Droid Wikipedia: https://www.wikipedia.org/wiki/F-Droid

Contribution/Submit Applications: https://f-droid.org/en/contribute/
Inclusion Policy: https://f-droid.org/en/docs/Inclusion_Policy
Request For Packaging: https://gitlab.com/fdroid/rfp/issues


Status

According to this user:

Hi James. Note that the popup modal about the app not working with Google Play gets generated by an included SDK, but it is not actually correct. The app will continue to work just fine even if you don't have Google Play services. We're not sure why to popup shows and we're researching how to get it removed as the app should function just fine without it.

Therefore, Edge *should* meet the requirement for working without the proprietary Google Services.

The next ideal step would probably be for one of the team members to open a Request for Packaging request to show F-Droid that you are interested in being included.

Community members can also open up Request for Packaging request.

Incorrect Balance Calculation

I received a transaction for .0003918 BTC.

I sent a transaction for .00017912 BTC.

Note: balance was 0 before these 2 transactions.

My balance went to .00060448 BTC.

I noticed .00060448 BTC is 2x .0003918 BTC - .00017912 BTC if that helps. So for some reason the initial incoming transaction amount is being counted twice.

Additionally, if it helps, the outgoing .00017912 BTC transaction was an attempt to spent to a segwit v1 address.

See screenshot below.
IMG_4444

Allow Changing Fees/Speed

Please add in the setting a default speed for all cryptocurrencies and please allow a setting during each transaction to choose the fees/speed of the transaction for all currencies.

This will make it cheaper to send crypto to friends who are not in a rush to the the money right away.

APK Download Hashsum

Please add a hashsum that can be used to check the APK download from the website to ensure the APK is safe to install and has not been tampered with.

xCode Downgrade Detox Issue

error /edge-react-gui/node_modules/detox: Command failed.
Exit code: 1
Command: node scripts/postinstall.js
Arguments: 
Directory: /Users/kylan/Documents/edge/edge-react-gui/node_modules/detox
Output:
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

API key for developer...

Hello guys,
I would like to know if I can add the estellar blockchain to this wallet to use my own tokens.
Here in Brazil we have a project that where we need a wallet with a stellar wallet to list our token, I would also like to know if I can use my brand on the wallet.
What we are doing is creating a community bank in order to make a blockchain-based digital account available to low-income people or unbanked.
I saw that also to use as a developer you need an api key ...
I tried many times to log in to this portal https://developer.airbitz.co/login
simple is not possible I installed the egge wallet and arbitz wallet and neither of them read the portal's qrcode.
Can you make an api key available to me?
I sent an email, but got no answers ....

Edge version confusing

Hi guys, I would like to askΒ something about Edge versioning. When I look at the 'Edge wallet' version in the Apple App Store, it isΒ 1.11.2. But in github; latest version isΒ 1.10.2. How come is the App Store version ahead? Thanks.

E04FD55B-86B3-467C-8099-1375DC92C075
4EBC3075-9220-449C-BE6F-69A62CD7B94D
`

disabling token leads to invalid app state

A disabled token remains selected for use on the send / request screens

Steps to reproduce:

  1. select wallet / token
  2. disable token

Expected result:
select parent currencyCode?
select no wallet?

Actual result:
token still selected

Possible solution(s):

  1. convert EdgeCurrencyWallet#getEnabledTokens to a watchable property like EdgeCurrencyWallet#enabledTokens when selected token for selected wallet is disabled, update app state to reflect
  2. remove token property from EdgeCurrencyWallet#balances when disabling a token
  3. limit selected wallet / token state to the send and request screens, remove navigation to those screens from side menu

[Feature Request] Offline Account

Please allow the ability to create one or many offline accounts on one device. An offline account is an account that does not backup or sync itself to the server. This will require the option to create offline accounts, get word phrases from any crypto wallet, add wallets with word phrase, and importing/exporting all the word phrases from every crypto wallet. Here is how it can work.

Creating Offline Wallet

  1. When you go to create an account you can click on the advanced options
  2. Click on create offline account
  3. Read the terms of service (Telling you how it works and to manually backup your private keys)
  4. Check off the boxes to agree to the terms (Stating you understand there is no backup and your fully responsible for backing up your keys)
  5. Create a PIN for the offline wallet

To Restore A Wallet In Your Offline Edge Account

  1. Login to your offline Edge account
  2. Go to Create new wallet
  3. Select Currency (Bitcoin, Litecoin, Monero, etc)
  4. Select restore from word phrase
  5. enter your 12/24 word seed

To Backup A Wallet From Your Offline Edge Account

  1. Login to your offline Edge account
  2. Select the wallet you want to backup, (Bitcoin, Litecoin, Monero, etc)
  3. Tap Show Word Phrase
  4. Enter PIN
  5. It will display the 12/24 word seed.

To Backup All The Wallets From Your Offline Edge Account
Login to your offline Edge account
Go to the settings
Go to export
(Optional) choose a password to encrypt the export file
Press enter to export all the word phrases from every cryptocurrency wallet into a file.

This will allow users to use all the things Edge offers without having to use the backup service if the user does not want their wallets backed up to a server.

Most multi currency wallet apps generates a 24 word phrase which can be used to restore all of their wallets, however there are no multi currency wallet apps out there that allow you to backup/restore each cryptocurrency wallet. This is a needed app in the crypto community since those who like to store the word phrase for each of their cryptocurrencies wallets do not have an all-in-one app to be able to restore their word seeds from for each cryptocurrency wallet they own.

I think it is better to be able to import/export each wallet word phrase since you can use these word phrases in other cryptocurrency wallet applications of your choice.

Setting Initial Wallet Currency

We are trying to make it so that everything is set to GBP on first signup. We have managed to get the general default to GBP however the wallets generated on startup appear to be locked to USD.

We can see /src/modules/Login/action.js handles creating the initial wallets on signup, however changing the variable 'fiatCurrencyCode' to 'iso:GBP' or 'GBP' (or any other code) seems to have no effect on the output.

Even directly changing the line beneath has no effect:

edgeWallet = await ACCOUNT_API.createCurrencyWalletRequest(account, walletType, { name: walletName, fiatCurrencyCode })

to

edgeWallet = await ACCOUNT_API.createCurrencyWalletRequest(account, walletType, { name: walletName, 'iso:GBP' })

or

edgeWallet = await ACCOUNT_API.createCurrencyWalletRequest(account, walletType, { name: walletName, 'GBP' })

suggestion to update instructions to remove package.lock.json before npm i

Hi, I had an issue where npm install froze as follows:

npm info it worked if it ends with ok
npm verb cli [ '/usr/local/Cellar/node/9.3.0_1/bin/node',
npm verb cli   '/usr/local/bin/npm',
npm verb cli   'install',
npm verb cli   '--verbose' ]
npm info using [email protected]
npm info using [email protected]
npm verb npm-session 96cbb8fb306ead19
npm info lifecycle [email protected]~preinstall: [email protected]
npm info lifecycle [email protected]~prepack: [email protected]
βΈ¨ β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘βΈ© β § loadIdealTree:loadAllDepsIntoIdealTree: info lifecycle react-nativ

After removing package.lock.json, the problem has gone away. The rest of the installation is taking an extremely long time, for some reason or another.

Denomination missing from getWalletHistory

Hi

I am trying to implement the Edge app api and am having issues figuring out the denomination of the nativeAmount field. It looks like users can choose their denominations in Edge but how can app developers see the default denomination for that currency?

It would be great if you could update the getWalletHistory() method to also give back the default denomination/multiplier for the currency. By default I mean the denomination that is used for the currency on blockexplorers and other services (not necessarily the one chosen by the user).

Thanks!

Camera remains active when not on 'Scan' scene

Problem:
When navigating away from the 'Scan' scene or in background mode, the camera component remains active + scanning.

Effects:

  • drains battery
  • scans when the user doesn't expect it
  • crashes when returning to the scan scene a second time

Causes:

  • React Native Router Flux does not unmount a scene when navigating to a new scene

Possible Fixes:

  • Add conditional rendering of the camera which includes the current scene and background mode
    • Upsides:
      • complete fix
      • current best practice
    • Downsides:
      • requires checking background mode
      • must remount on each navigation to the 'Scan' scene, this is slow
    • Mitigation:
      • Throw up a spinner

Further Research

  • Look into React Native Camera pausing the camera component
  • Look into Android Native pausing camera preview

react-native-camera issue 556
react-native-camera issue 460
react-native-camera issue 357

archiving/deleting all wallets leads to invalid state

archiving/deleting all wallets leads to invalid state

os:

android, probably on ios too

steps to reproduce:

  1. archive/delete all wallets
  2. navigate to request

-or-

  1. archive/delete all wallets
  2. scan / sweep
  3. scan qr code

expected result:

indicate no wallet selected

actual result:

indefinite spinners
error alerts

visuals

severity:

low

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.