* add starter for swaps * creating swap page * building better swap functions * creating select send type page * bumping flashnet version * fixing polling manager to inclue both increases and decreses to balance * updating swaps page to use custom keyboard entry + enter in from or to amount * adding basic support for chosing payment amount * remoing log messges * creating user balance context to easily use total, sat, and usd balance * remove uneeded imports * fixing navbar balance to match selected balance * filter txs based on chosen balance * fixed select page header text size * created flashnet txid tracker to keep homepage clean * adding swap function to payments wrapper * using total balance in navbar balance * fixing navbar balance * load saved swaps on wallet init * finishing swap page * adding translations * adding temp txs to swaps so the txs always show * adding error messages to flashnet * adding ability to pause animation * adding start at begining animation * standardize tokens display format * fixed missing return * create function to decode spark invoices * creating flashnet provider to hold flashnet pool info * use global pool info to speed up loading speed * fixing icon style inconsistancy * using flashnet rate more more accurate USD value * adding bitcoin and dollar icons * creating toast message for incoming ln swap * removing native tokens amount display, only show formatted amount * adding new icons * creating dollar sat, dollar token values * fixing USD user sat amount display * creating select receive asset page for receiveBtcPage * adding dollar receive type to LN and Spark * handing swap receive payment on homepage * using new dollar and bitcoin icons * fixing number fomatter * fixing wallet load balance bug * adding denominations to swap balances * exporting for flashnet use * increasing modal height * fixed swap amount conversion bug + formatted error messages * adding webview processes to functions * since lightning payments can now be lrc20 payments we need to specify spark here so the id is the correct format. * updating bitcoin icon * updating address parser * creating regex to extract flashnet error code * adding loading to fee when calculating swap * adding failed tx hash to flashnet transfer * adding flashnet transfers to webcontext * remove hardcoded value * blcok all failed txs * mark auto-refunded flashnet swaps as failed * allow failed txs to be added to database. Now they are blocked on the homscreen * optimizing ln invoice match during restore * fixing translation * adding ln -> bitcoin swap + limits context * removing unneded imports * adding retry to balance + fixing wallet state change + moving swaps to flashnet context * load saved transfers on context init * use new poolInfo format * adding payment logic for swaps * adding freeze property so balance doesnt update on send page * updating fee information * adding fee warning to receive page * adding conversion rate line * fixing fee rate on receive page to not convert * creating conversion utility functions * getting current bitcoin price based on swap rate * adding amount validation + making min half amd max more accurate * adding estimated converted amount to receive page * fixed variable naming * adding swap payments logic to sending * adding translations * updating swap context * increasing slider duration * waiting for wallet to init before starting swap page init process * fixing eslint * fixing naming convention * fixing height issue * changed txt labels to percent amounts * fixed dollar balance not showing for USD * fixing payments to ln addresses with encoded spark invoices * fixing converted amount * fixing cuttof fee text * making sure usdb doesn't trigger full tokens display * updating swaps flow * fixing usd txs not displaying on homescreen when lrc20 is not enabled * fixing balance mismatch * adding tap to switch sats to fiat on send page * fixing fee and input bug * fixing rate bug * removing uneeded second button tap * fixing double execution of same swap * fixing inputs being unmatched * adding automatic refund listener for swaps * bumping version code * updating translations * fixing zero amount invoice validation * fixed rouding error * only show swap conversion on home and dollar page * removing swaps description from pending tx * making swap payments have type swap * adding execution price and swap label to swap transactions * adding checks for pending payments * removed error showing on screen * updating translations * bumping version code * making sure fees calcuate on user-choice as well * fixing theme issues * fixing dollar sat balance * creating choose payment component * bump version code * fixing half modal slide out animation * updating payments flow * separating spark and flashnet inits * cache pool info to fix sat balance on init * updating translations * removing sat value for swap payments * bump version code * remove old handler * fixing fiat display bug * persisting keyboard on taps * making fee more accurate if paying bolt11 invoice with spark address inside * making fiat search more broad * allowing fast pay to be set using andriod buttons * adding request title to contacts send and request page if requesting * fixing button opacity * adding tap to scroll up feature on contacts page * adding helpfull errors * updating overlay color for lightsout mode * adding button to scroll to top on homepage * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> * Update locales/pt-BR/translation.json Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com> --------- Co-authored-by: bitcoinuser <bitcoinuser@users.noreply.github.com>
Blitz Wallet is a React Native application that allows users to interact with the Bitcoin Lighting Network in a self-custodial way. By using the Spark network, Blitz Wallet aims to create a seamless and simple payment experience for its users.
⚠️ This is a SELF-CUSTODIAL Bitcoin Lightning wallet. Neither Blitz nor Spark has access to your seed phrase or funds. If you lose your seed phrase, access to your funds will be lost. Also, do not share your seed phrase with anyone. If you do, they will be able to steal your funds.
Features
- Send Bitcoin payments
- From QR code
- From camera roll
- From clipboard
- From contacts
- Receive Bitcoin payments
- Using a Lightning QR code
- Using a Bitcoin QR Code
- Using a Liquid QR Code
- Using a Spark QR code
- LNURL pay, withdrawal, and auth support
- Wallet recovery
- Support for numerous fiat currencies
- Export transactions in a CSV file
- View a detailed description of payments (date, time, fee, payment type) + technical details (payment hash, payment preimage, payment ID)
- Change balance denomination between Fiat, Sats, or hidden
- Opt-in Biometric login
- Dark mode, Light mode, and Lights out mode
- Easy left slide QR code scanning on the wallet page
- Built-in store where you can purchase gift cards, VPNs, generative AI, and SMS messages
TODO
- Migrate from local storage to Google Firebase
- Contacts
- Translation option
- Suggested words when restoring the wallet
- migrate from expo 49 to 51
- Integrate Bitcoin Liquid Wallet
- Add apps to store
- Add Rootstock as a receive option
- Ability to create sub-accounts within wallet
- NWC
- Improve notifications
- Improve initial load speed
- Create build option
Download Blitz Wallet
Contribute
We rely on GitHub for bug tracking. Before reporting a new bug, please take a moment to search the existing issues to see if your problem has already been addressed. If you can't find an existing report, feel free to create a new issue.
Moreover, we encourage contributions to the project by submitting pull requests to improve the codebase or introduce new features. All pull requests will be thoroughly reviewed by members of the Blitz team. Your contributions are invaluable to us!
Build
To run the project locally, follow these steps:
Coming soon...
License
Blitz is released under the terms of the Apache 2.0 license. See LICENSE for more information.