Bitcoin thin client for iOS & Android. Built with React Native
Go to file
GLaDOS 6bd995d2bb
Merge pull request #5073 from BlueWallet/ref-ecc-noble
REF: swap tiny-secp256k1 for noble-secp256k1
2023-04-13 00:18:43 +01:00
__mocks__ FIX: typescript compilation errors 2021-07-22 16:38:14 +01:00
.bundle OPS: Update to RN 67 2022-02-11 11:47:06 +00:00
.circleci Update Node.js to v16.20.0 2023-03-31 20:09:51 +00:00
.github Merge remote-tracking branch 'origin/master' into abhiShandy-feat-bip47 2023-03-15 20:55:27 +00:00
.tx OPS: new transifex config for new cli 2022-12-10 18:28:31 +03:00
android Update dependency com.android.tools.build:gradle to v7.4.2 2023-03-26 19:47:31 +01:00
blue_modules REF 2023-04-10 11:32:20 +01:00
class REF 2023-04-10 11:32:20 +01:00
components Update WalletsCarousel.js 2023-04-12 11:01:55 -05:00
fastlane/metadata/android/en-US DEL: BB 2022-07-12 19:44:03 -04:00
helpers OPS: update eslint packages and config 2022-10-31 12:25:26 +00:00
img Merge pull request #2836 from mcsaeid/rtl-icons 2021-03-23 18:33:56 -04:00
ios FIX: Update AppDelegate to latest RN specs 2023-04-04 11:00:53 -04:00
loc Merge pull request #5450 from BlueWallet/translations_loc-en-json--master_pl 2023-04-11 19:02:22 +01:00
models FIX: switch exchange rate from coindesk to coingecko 2023-04-12 21:57:26 +01:00
screen Merge pull request #5073 from BlueWallet/ref-ecc-noble 2023-04-13 00:18:43 +01:00
scripts REF: lint 2023-03-15 21:42:53 +00:00
tests REF: resolved conflict 2023-04-10 10:52:10 +01:00
typings REF: convert wallet class to typescript 2022-09-11 11:59:00 +01:00
windows ADD: Windows assets 2021-07-21 10:13:53 -04:00
_editorconfig OPS: Upgrade RN 0.64.2 (#3170) 2021-07-06 10:38:53 +01:00
.detoxrc.json OPS: Update RN (#5305) 2023-03-04 17:51:11 +00:00
.eslintrc OPS: update eslint packages and config 2022-10-31 12:25:26 +00:00
.gitignore OPS: Update RN (#5305) 2023-03-04 17:51:11 +00:00
.npmrc OPS 2022-06-02 19:38:44 +01:00
.ruby-version OPS: Update RN (#5305) 2023-03-04 17:51:11 +00:00
.watchmanconfig ...Android... 2019-01-19 00:40:41 -05:00
.xcode-env OPS: Update RN (#5305) 2023-03-04 17:51:11 +00:00
App.js WIP 2023-03-29 20:46:11 -04:00
appcenter-post-build.sh OPS: feature-branch apk builds are now downloaded directly from CI (appcenter.ms) 2021-06-29 22:56:16 +01:00
babel.config.js REF: upgrade react-native-reanimated to v2 2021-05-10 11:59:54 +03:00
BlueApp.js REF: convert some stuff to typescript 2022-09-05 19:34:02 +01:00
BlueComponents.js REF: Transactions Header JS > TSX 2023-04-01 20:16:00 -04:00
CODE_OF_CONDUCT.md DOC: operations 2019-11-29 00:22:57 +00:00
CONTRIBUTING.md Update CONTRIBUTING.md 2021-09-24 14:14:41 +01:00
FAQ.md Update FAQ.md - grammar fixes 2021-10-01 22:03:17 +01:00
Gemfile OPS: Update RN 2023-03-29 15:20:04 -04:00
Gemfile.lock OPS: Update to RN 67 2022-02-11 11:47:06 +00:00
index.js FIX: bugsnag integration 2021-09-20 14:13:17 +01:00
LICENSE DOC 2022-06-15 11:27:39 +01:00
metro.config.js REF: lint 2021-07-22 19:28:09 +01:00
msbuild.binlog ADD: Windows assets 2021-07-21 10:13:53 -04:00
Navigation.js REF: refactored and improved BIP47 2023-03-15 20:42:25 +00:00
NavigationService.js REF: Use NavigationContainer Ref for NavigationService 2020-06-19 13:42:50 +01:00
package-lock.json resolved conflict 2023-04-12 22:08:43 +01:00
package.json resolved conflict 2023-04-12 22:08:43 +01:00
README.md DEL: Remove outdated code for unsupported macOS 2023-02-25 12:20:46 -04:00
RELEASE.md DOC 2022-06-15 11:27:39 +01:00
renovate.json OPS: renovate & codeql 2022-03-07 16:25:07 +00:00
SECURITY.md Create SECURITY.md 2019-08-04 18:57:07 +01:00
shim.js REF: upgrade eslint, prettier, move them to dev deps, fix new lint errors 2021-05-08 09:41:45 +03:00
tsconfig.json OPS: Update RN (#5305) 2023-03-04 17:51:11 +00:00
UnlockWith.js REF: enable eslint react-native/no-unused-styles rule and remove unused styles 2022-01-28 15:16:47 +03:00
WatchConnectivity.ios.js FIX: If a watch isnt paired, dont bother syncing 2023-03-27 11:05:45 -04:00
WatchConnectivity.js REF: Handoff Component 2021-01-18 22:40:11 -05:00

BlueWallet - A Bitcoin & Lightning Wallet

GitHub tag CircleCI code style: prettier

Thin Bitcoin Wallet. Built with React Native and Electrum.

Appstore Playstore

Website: bluewallet.io

Community: telegram group

  • Private keys never leave your device
  • Lightning Network supported
  • SegWit-first. Replace-By-Fee support
  • Encryption. Plausible deniability
  • And many more features...

BUILD & RUN IT

Please refer to the engines field in package.json file for the minimum required versions of Node and npm. It is preferred that you use an even-numbered version of Node as these are LTS versions.

To view the version of Node and npm in your environment, run the following in your console:

node --version && npm --version
  • In your console:
git clone https://github.com/BlueWallet/BlueWallet.git
cd BlueWallet
npm install

Please make sure that your console is running the most stable versions of npm and node (even-numbered versions).

  • To run on Android:

You will now need to either connect an Android device to your computer or run an emulated Android device using AVD Manager which comes shipped with Android Studio. To run an emulator using AVD Manager:

  1. Download and run Android Studio
  2. Click on "Open an existing Android Studio Project"
  3. Open build.gradle file under BlueWallet/android/ folder
  4. Android Studio will take some time to set things up. Once everything is set up, go to Tools -> AVD Manager.
  5. Click on "Create Virtual Device..." and go through the steps to create a virtual device
  6. Launch your newly created virtual device by clicking the Play button under Actions column

Once you connected an Android device or launched an emulator, run this:

npx react-native run-android

The above command will build the app and install it. Once you launch the app it will take some time for all of the dependencies to load. Once everything loads up, you should have the built app running.

  • To run on iOS:
npx pod-install
npm start

In another terminal window within the BlueWallet folder:

npx react-native run-ios
  • To run on macOS using Mac Catalyst:
npm run maccatalystpatches

Once the patches are applied, open Xcode and select "My Mac" as destination.

TESTS

npm run test

LICENSE

MIT

WANT TO CONTRIBUTE?

Grab an issue from the backlog, try to start or submit a PR, any doubts we will try to guide you. Contributors have a private telegram group, request access by email bluewallet@bluewallet.io

Translations

We accept translations via Transifex

To participate you need to:

  1. Sign up to Transifex
  2. Find BlueWallet project
  3. Send join request
  4. After we accept your request you will be able to start translating! That's it!

Please note the values in curly braces should not be translated. These are the names of the variables that will be inserted into the translated string. For example, the original string "{number} of {total}" in Russian will be "{number} из {total}".

Transifex automatically creates Pull Request when language reaches 100% translation. We also trigger this by hand before each release, so don't worry if you can't translate everything, every word counts.

Q&A

Builds automated and tested with BrowserStack

Bugs reported via BugSnag

RESPONSIBLE DISCLOSURE

Found critical bugs/vulnerabilities? Please email them bluewallet@bluewallet.io Thanks!