Go to file
Daniel Gonzalez Gasull 0055927db6
Update README.md (#92)
Add installation section and note that GTK is needed for AppImage.
2023-06-30 09:09:23 +10:00
.github/workflows Smooth scan cancel 2023-06-02 00:22:16 +10:00
android Lower target sdk to 32 2023-02-06 22:34:26 +10:00
assets BTC Testnet 2023-06-09 09:15:53 +10:00
build-scripts Scan transaction 2023-06-01 07:31:51 +10:00
docker Merge flatpak and appimage builders 2023-03-05 14:49:25 +10:00
flutter_zxing@6e28546c1c use zxing 2023-01-21 19:27:29 +08:00
idl BTC Testnet 2023-06-09 09:15:53 +10:00
ios Db encryption 2023-03-06 12:53:02 +10:00
lib BTC Testnet 2023-06-09 09:15:53 +10:00
librustzcash@e2fe0b8d38 WIP 2023-04-19 11:11:58 +10:00
linux Db encryption 2023-03-06 12:53:02 +10:00
macos Flutter 3.10 2023-05-17 07:48:25 +10:00
misc Remove dmg 2023-05-30 14:55:14 +10:00
native BTC Testnet 2023-06-09 09:15:53 +10:00
orchard@fa4ec31bd1 Update dependencies 2023-05-13 00:10:18 +10:00
packages/warp_api_ffi BTC Testnet 2023-06-09 09:15:53 +10:00
runtime Bundle OpenSSL & SQLCipher 2023-03-07 20:58:38 +10:00
web Squashed commit of the following: 2021-11-12 21:27:59 +08:00
windows Db encryption 2023-03-06 12:53:02 +10:00
.dockerignore Build 330 2022-12-21 15:46:00 +08:00
.gitignore Extract Build # 2022-12-19 04:19:41 +08:00
.gitmodules Cargo overrides 2023-04-29 19:29:17 +10:00
.metadata starter project 2021-06-22 08:40:59 +08:00
BUILD.md Archlinux pkgbuild 2023-03-10 09:08:59 +10:00
Cargo.toml Lock on librustzcash rev 2023-05-26 22:12:24 +10:00
ISSUE_TEMPLATE.md Add issue template 2023-02-10 20:27:48 +10:00
Makefile.toml use zxing 2023-01-21 19:27:29 +08:00
README.md Update README.md (#92) 2023-06-30 09:09:23 +10:00
build.env BTC Testnet 2023-06-09 09:15:53 +10:00
build.sh Build apk 2022-07-10 16:56:05 +08:00
codegen.sh Publish to GP workflow 2023-02-07 20:07:17 +10:00
configure.sh Fix /0 in pool page if empty account 2022-12-17 05:05:08 +08:00
env.sh Increase mem of vagrant vm 2022-10-03 13:55:05 +08:00
install-aab.sh Publish to GP workflow 2023-02-07 20:07:17 +10:00
install-deps.sh Flutter 3.7.0 2023-01-31 08:47:36 +08:00
install-dev.sh Update zcash-sync 2022-07-12 15:29:34 +08:00
install-rust.sh fdroid metadata 2023-01-21 19:27:33 +08:00
intl.sh Fix Scan TAddrs 2023-03-13 18:28:19 +10:00
publish.md Spanish translation update 2023-02-23 11:53:01 +10:00
pubspec.lock Fix duplicate price fetching 2023-05-31 15:54:56 +10:00
pubspec.yaml BTC Testnet 2023-06-09 09:15:53 +10:00
smoke-test.md active account stored in db 2023-01-07 07:36:53 +08:00

README.md

YWallet

The fastest, most advanced, shielded wallet for Zcash

Main Features

  • Warp Sync: PROCESSES ~10 000 BLOCKS PER SECOND (1)
  • Transparent and Shielded Address support (2)
  • Scalable Design: Supports hundreds of thousands of transactions and received notes
  • Low Requirements: Android 7.0+, 2 GB of RAM

Other Features

  • Multi-account
  • Watch only account from viewing key
  • Import seed phrase (ZIP 32 compliant) or secret key (Zcashd standard)
  • One touch transparent account shielding
  • Automatic shielding above configurable threshold
  • Transparent Shielding in Payments
  • Snap (i.e. diversified) addresses
  • Show equivalent in Fiat currencies (USD, EUR, JPY, RMB, etc.)
  • Display and select notes (Coin Control)
  • Specify spending amount in Fiat or ZEC
  • Prepare UNSIGNED transactions for cold storage spending
  • Broadcast raw transactions
  • Multiple recipient payments
  • Transaction History
  • Memo
  • Auto Split Notes
  • Account Balance History
  • Largest Past Payees Chart
  • Wallet P/L Charts and Reports
  • Contact Address Book
  • Color and Dark/Light Themes
  • Customizable anchor offset
  • QR code scanner support
  • Localization in English, Spanish, French, Chinese, (more to come)
  • Fluent and Responsive UI

Privacy Features

  • No data upload
  • All information recoverable from seed phrase or secret key
  • Customizable lightwalletd server URL

(1): Tested on OnePlus 7T - Snapdragon 855+ (2): Primary Shielded - Transparent Balance cannot be directly spent

Top 10 Features

10. Themes and custom server

The app comes with several themes both in dark and light mode. And it lets you customize your own theme. If you run your own instance of lightwalletd, you can connect to it specifically.

9. Multi Pay

I have used this feature only a few times but when I did, it was a huge time saver. If you need to pay several people, you can make a single transaction with several recipients. Without multi-pay, youd have to wait for confirmations once you run out of spare notes.

8. Launcher Integration

The wallet has launcher shortcuts for sending and receiving when you press on the app icon. On iOS, if you scan a payment URI, it will offer to open the wallet and jump to the “send” page.

7. Contacts

I created contacts for my most commonly used addresses. They are saved on the blockchain in a private memo and therefore will never be lost.

6. Control of Send and Received Notes

The app shows you the individual notes that you received and you can choose to exclude some of them from spending. Moreover, when you make a payment you can split a large note into smaller ones in order to give more notes to your recipient.

5. Your balance is shown in detail

The “send” page has a breakdown of your balance. It shows the amount that hasnt received enough confirmations yet, the balance you excluded from spending, the amount in your transparent address, etc. If you choose to, you can spend under confirmed notes or your transparent balance but it wont be done by default since it may hurt your privacy. There is no “why cant I use my money” surprise.

4. Price Chart and Wallet P/L

I often want to quickly check the market price of ZEC vs fiat. The home page shows the current market price and the valuation of the account in fiat. If I want to look at the history, I swipe to the Price Chart. The app offers ~70 different reference currencies both in fiat and crypto.

3. Multi Account

The wallet can hold several accounts with different seeds, secret keys, or viewing keys. This allows me to have an account per type of fund. For instance, one of the accounts is watch-only and has all the functionalities of a regular account except direct spending.

2. Cold Wallet

Speaking of watch-only accounts, it is possible to spend from them using the companion tool. After confirming the transfer, the wallet creates an unsigned transaction file. I transfer it by USB OTG and sign it on my offline laptop. Finally, I bring it back to YWallet for broadcasting.

1. Sync speed

Finally, the wallet is currently the fastest by far and scales well to large accounts with thousands of notes and transactions. Also, it starts quickly and synchronizes in seconds. I dont have to think about keeping it in sync.

Installation

The installation packages are on the releases page.

The AppImage Linux download requires that you install GTK in your system. For example, for Debian GNU/Linux, run:

sudo apt install libgtk-4-1