Bitcoin thin client for iOS & Android. Built with React Native Google Colab

Overview

Run bluewallet-Google-Colab

https://colab.research.google.com/drive/1OShIMVcFZ_khsUIBOIV1lzrqAGo1gfm_?usp=sharing


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. If you are running macOS Catalina, you may need to remove all iOS 14 Widget targets.

TESTS

npm run test

MOTIVATION TO BUILD IT

I was not satisfied with existing iOS Bitcoin apps, especially with BreadWallet (the one I mainly used) where development stalled and they could not even deliver such features as SegWit, RBF and custom fees (at the times where custom fees were especially needed). So I knew I could create one to use myself and let others use it. I had experience with awesome bitcoin-js lib (javascript), and since I don't own any Macs, I don't plan to, and not going to learn ObjC/Swift - ReactNative (where you also write in javascript) was an obvious choice.

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 [email protected]

Translations

We accepts 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 [email protected] Thanks!

You might also like...

A thin wrapper around arweave-js for versioned permaweb document management.

🎁 ar-wrapper A thin wrapper around arweave-js for versioned permaweb document management. Helps to abstract away complexity for document storage for

May 12, 2022

A thin, opinionated headless wiki with few features.

thinwiki A thin, opinionated headless wiki with few features. Git used as a backing store Markdown files with front matter used for pages index.md pag

Oct 13, 2022

Google-Drive-Directory-Index | Combining the power of Cloudflare Workers and Google Drive API will allow you to index your Google Drive files on the browser.

🍿 Google-Drive-Directory-Index Combining the power of Cloudflare Workers and Google Drive will allow you to index your Google Drive files on the brow

Jan 2, 2023

It is a very basic implementation of how blockchain works, mainly how the bitcoin blockchain.

How to run this program npm install node core/blockchain.js What is this It is a very basic implementation of how blockchain works, mainly how the bit

May 9, 2022

A wrapper for a mercado bitcoin!

About A library developed from the bitcoin marketplace api! With it you can check values of cryptos, tokens and ntfs Usage const cripto = require('mer

Oct 25, 2022

A port of bitcoin-core that will (over time) become TS friendly.

bitcoin-core A modern Bitcoin Core REST and RPC client to execute administrative tasks, multiwallet operations and queries about network and the block

Nov 22, 2022

A website for tracking community support for BIP21 QR codes that support on-chain and lightning bitcoin payments.

BIP21 Microsite This is a WIP microsite to promote the usage of a BIP21 payment URI QR code that can include lightning invoices or offers. Wallet supp

Nov 27, 2022

MultiSafe is a shared crypto wallet for managing Stacks (STX) and Bitcoin (BTC).

MultiSafe MultiSafe is a shared crypto wallet for managing Stacks (STX) and Bitcoin (BTC). Deploy a MultiSafe https://app.multisafe.xyz/ Features Curr

Dec 26, 2022

Fixed-point math for Bitcoin Script

bsv-fixmath Fixed-point implementations of exp, log, root and pow for Bitcoin SV. This repo contains two equivalent implementations, one in Typescript

Oct 18, 2022
Owner
DE MINING
Development Engineering Mining
DE MINING
Вlockchain feed index Google Colab

blockchain-feed-index Run Google Colab https://colab.research.google.com/drive/1OShIMVcFZ_khsUIBOIV1lzrqAGo1gfm_?usp=sharing Installation Install node

DE MINING 1 Jun 25, 2022
Bitcoin terminal tracker is a terminal app which allow you to track bitcoin price from your terminal

BTC Terminal Tracker Bitcoin terminal tracker is a terminal app which allow you to track bitcoin price from your terminal. In this version (V1.2) I ch

Sina yeganeh 9 Jul 27, 2022
Ios-calculator-js - Calculator made with vanilla javascript and custom css based on the design of iOS devices.

ios-calculator-js This is a practice project in which I try to replicate iOS calculator's both logic and styling. In case you spot room for improvemen

Franco 1 Nov 10, 2021
Atsumaru - an open source manga reader application for Android, IOS & Web

Atsumaru is currently in alpha pre-release We're still working on vital components for the reader, follow this repo for updates or join our Discord se

Undo 31 Dec 21, 2022
Kakapo for Desktop, Web, iOS, Android, Babel, Reflux, ImmutableJs, HowlerJs, Webpack

Kakapo is an open source ambient sound mixer for relaxation or productivity, available on the Chrome Web Store. See also: Kakapo for Desktop & Web - K

Dredsoft 3 Sep 15, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
DOM ViewModel - A thin, fast, dependency-free vdom view layer

domvm (DOM ViewModel) A thin, fast, dependency-free vdom view layer (MIT Licensed) Introduction domvm is a flexible, pure-js view layer for building h

null 604 Dec 8, 2022
Thin wrapper around Rant-Lang for Obsidian.md

Obsidian Rant-Lang Thin wrapper around the Rant language Rust crate to be used in Obsidian. "Rant is a high-level procedural templating language with

Leander Neiss 10 Jul 12, 2022