Bitcoin thin client for iOS & Android. Built with React Native
Go to file
Marcos Rodriguez Velez 03dbb9764c
OPS: Podfile
2024-06-09 17:08:22 -04:00
__mocks__ REF: few unit tests to TS 2024-03-10 17:44:22 +00:00
.bundle OPS: Update to RN 67 2022-02-11 11:47:06 +00:00
.circleci chore(deps): update node.js to v16.20.2 2023-08-13 21:26:50 +00:00
.github Update build-release-apk.yml 2024-05-17 23:55:55 -04:00
.tx ADD: add new languages 2023-06-23 14:12:05 +01:00
android ADD: Dark mode for Android price widget 2024-06-09 22:07:13 +01:00
blue_modules chore: fix some comments (#6638) 2024-06-01 16:21:27 -04:00
class Merge pull request #6639 from BlueWallet/slip39 2024-06-04 10:51:37 +00:00
components Merge pull request #6679 from BlueWallet/seg 2024-06-09 20:57:01 +00:00
fastlane/metadata/android/en-US OPS: iOS workflow for GA 2023-12-03 18:09:29 +00:00
helpers chore: fix some comments (#6638) 2024-06-01 16:21:27 -04:00
hooks DEL: Remove package 2024-06-03 21:27:21 -04:00
img OPS: Reduce asset sizes and remove unused files 2024-06-09 22:05:09 +01:00
ios OPS: Podfile 2024-06-09 17:08:22 -04:00
loc Translate loc/en.json in de_DE 2024-06-06 11:24:32 +00:00
models ADD: GHS and XAF 2024-05-26 21:14:21 -04:00
navigation Merge pull request #6674 from BlueWallet/about 2024-06-09 21:04:41 +00:00
screen Merge pull request #6674 from BlueWallet/about 2024-06-09 21:04:41 +00:00
scripts DEL: Widget center package 2024-05-19 13:59:53 -04:00
tests Merge pull request #6674 from BlueWallet/about 2024-06-09 21:04:41 +00:00
typings fix: upgrade slip39 dependency 2024-06-02 20:17:49 +01:00
_editorconfig OPS: Upgrade RN 0.64.2 (#3170) 2021-07-06 10:38:53 +01:00
.detoxrc.json TST: minor e2e refactor 2023-10-22 13:00:20 +01:00
.eslintrc fix: remove simple-import-sort 2024-05-21 11:56:12 +01:00
.gitignore OPS: RN Update 2024-05-06 18:21:47 -04: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.tsx REF: Import directory 2024-05-31 13:18:01 -04:00
appcenter-post-build.sh OPS: appcenter builds fix 2023-12-29 11:09:34 +00:00
babel.config.js REF: upgrade react-native-reanimated to v2 2021-05-10 11:59:54 +03:00
BlueComponents.js fix: appy simple-import-sort plugin 2024-05-21 11:56:10 +01:00
CODE_OF_CONDUCT.md DOC: operations 2019-11-29 00:22:57 +00:00
CONTRIBUTING.md DOC: Update CONTRIBUTING.md 2023-12-01 18:40:26 +00:00
FAQ.md Update FAQ.md - grammar fixes 2021-10-01 22:03:17 +01:00
Gemfile OPS: Update RN, Revert Realm 2024-03-01 16:53:50 +00:00
Gemfile.lock OPS: Bundle update 2024-04-09 20:41:06 -04:00
index.js fix: appy simple-import-sort plugin 2024-05-21 11:56:10 +01:00
LICENSE Update LICENSE 2024-01-18 21:23:46 +00:00
MasterView.tsx REF: Import directory 2024-05-31 13:18:01 -04:00
metro.config.js Lint 2024-05-04 18:06:30 -04:00
msbuild.binlog ADD: Windows assets 2021-07-21 10:13:53 -04:00
NavigationService.ts REF: SelectWallet to TSX 2024-06-08 12:01:56 -04:00
package-lock.json OPS: Podfile 2024-06-09 17:08:22 -04:00
package.json OPS: Package update 2024-06-09 22:01:47 +01:00
react-native.config.js ADD: Search for Wallet in Home screen 2024-01-20 14:06:06 -04:00
README.md Update README.md 2024-03-23 22:22:03 +00:00
RELEASE.md chore: fix some comments 2024-03-15 13:44:00 +00: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: update rn-electrum-client to support latest react-native-tcp-socket; delete obsolete code 2024-02-05 19:00:34 +00:00
tsconfig.json REF: Lazy Load Add Wallet 2024-05-05 16:33:06 -04: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 debug BlueWallet on the iOS Simulator, you must choose a Rosetta-compatible iOS Simulator. This can be done by navigating to the Product menu in Xcode, selecting Destination Architectures, and then opting for "Show Both." This action will reveal the simulators that support Rosetta. **

  • To run on macOS using Mac Catalyst:
npx pod-install
npm start

Open ios/BlueWallet.xcworkspace. Once the project loads, select the scheme/target BlueWallet-NoLDK. Click Run.

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!