What is WOWlet?
The goal of WOWlet is to provide a simple/easy-to-use Wownero wallet for every day use. It is beginner friendly, but should also cater to the needs of experienced users.
- Free and open source
- The source code is available here. WOWlet is licensed under BSD-3.
- Familiar
- The UI was heavily inspired by Electrum (the Bitcoin wallet).
- Easy to use
- You download and run it. No complicated setup required. It should work straight out of the box.
- Fast
- WOWlet is designed with lower-specced hardware in mind. No fancy graphics or animations.
- Feature-rich
- We support a number of features that are not available in other graphical wallets.
What kind of software is WOWlet made with?
- C++
- Qt 5.15
- OpenSSL 1.1.1g, CMake, libqrencode.
- Wownero, as a library to hook into the
wallet2
interface. - Tevador's 14 word seed library.
- Tor.
Where does WOWlet store data?
Application-wide configuration is stored inside ~/.config/wowlet/settings.json
as a JSON blob. WOWlet does not have an uninstaller, manual removal is required.
~/.config/wowlet
- configuration/settings, tor~/Wownero/wallets
- wallet directory
Note that paths are listed in WOWlet itself (File->Settings->Paths
).
What are Wownero wallet files?
When you create a wallet called foo
, WOWlet writes 2 files to a user specified directory:
foo.keys
- The wallet file. It is important. Do not remove it unless you have a backup and/or mnemonic seed. It contains your private key.foo
- The wallet cache. You can safely remove this, however, you will lose address book contacts, and various other metadata/state.foo.address.txt
- (optionally) This file is only written in testnet/stagenet mode and contains your primary Wownero address.
Does WOWlet run on my operating system?
WOWlet has releases for Linux, macOS, and Windows. WOWlet should also work fine on Tails and Whonix.
WOWlet runs on Qt 5.15 - some old(er) operating systems will be incompatible.
If WOWlet does not work on your OS or distro you may create an issue on our git. Please beware WOWlet has a small development team so the fastest way to fix problems is to fix them yourself (and submitting a pull request in the process).
Does WOWlet work without a Tor connection?
Yes, but you'll be missing some features.
Why does WOWlet communicate with a websocket server?
The websocket server is used to fetch miscellaneous data:
- A list of community hosted remote nodes
- Price information (fiat/crypto)
- Reddit and forum feed
- Most recent blockheight (used as fallback)
- Latest WOWlet version
- More exiciting stuff™
WOWlet's intent was always to be a Wownero wallet "with extras" - such as realtime fiat/cryptocurrency market price updates and community forum updates within the wallet application itself.
Please note the websocket server can only be contacted through Tor, which WOWlet will do for us - we have no interests capturing IP addresses and/or other information.
Does WOWlet support...
Reminder: WOWlet is made by a small team of developers.
My low-specced machine
Most likely.
32-bit machines?
No, we see no reason to support legacy architectures.
Apple M1?
We unfortunately don't have the hardware available for testing and/or releasing those kind of executables.
Hardware wallets
We will not support Ledger or Trezor because:
- The feature takes too much time to develop and maintain.
- It is error-prone - users will flock to our support forum(s) for help and assistance, which sucks up valuable developer time.
Just keep your .keys
safe, it is not hard :-)
language localization?
No, keeping the translation strings up-to-date is currently too time consuming.
How does WOWlet automatically find remote nodes?
Known and working remote nodes are distributed via the websocket server. Want yours included? Submit new nodes here.
Why is the second word of the seed always the same?
In addition to the private spend key, the 14 word seed scheme also encodes the restore date, cryptocurrency type, and reserves a few bits for future use. The second word is static because the reserved bits remain the same for each seed generation.
Why does WOWlet automatically connect to a remote node?
Speed and ease-of-use. WOWlet is tailored towards an audience that don't want to run their own node and don't mind the benign privacy implications of automatically connecting to one. Funnily enough, this setup is still more secure than using Bitcoin, as Wownero is a private blockchain - regardless of how we interface with it.
How can I connect to my (local) node?
In File -> Settings -> Node
choose "From custom list" and add the IP address and port of your node. If your
node runs locally under default configuration, you can enter 127.0.0.1:18081
.
How can I open a wallet straight from the commandline?
Use --wallet-file
and --password
to immediately open a wallet, skipping the startup wizard.
./wowlet --wallet-file /home/user/Wownero/wallets/mywallet.keys --password "my_wallet_password"
How do I restore my wallet from seed?
You need a 14 word or 25 word mnemonic seed to restore a wallet. Without a mnemonic seed you have no way of restoring your wallet.
If you have a 14 word seed, the wallet can be restored without any further complications.
If you have a 25 word seed, specifying a "restore height" is necessary. This tells WOWlet at what point to start scanning the blockchain
from - in search of incoming and outgoing transactions associated with your wallet. If you fill in an invalid restore height,
you will not be able to detect any transactions you have done previously and consequently your balance might turn out
incorrect. When you don't know the restore height, simply leave it on 0
. Alternatively you can guess your wallet's
creation date. WOWlet will derive the restore height from it.
By default, WOWlet gives out 14 word mnemonic seeds because of the (perceived) complexities (for beginners) regarding restore heights.
How can I support the development of WOWlet?
By submitting pull requests!
The application is very small on my high DPI 4K monitor
The Qt GUI framework should theoretically adept to on any type of monitor, but if for some reason it doesn't you can use an environment variable to scale the application manually:
QT_SCALE_FACTOR=2 ./wowlet
On Mac OS this hack might crash the application.