readme and screenshots

This commit is contained in:
Stepan Snigirev 2019-09-24 18:21:17 +02:00
parent 828810873f
commit c13fda71f0
9 changed files with 43 additions and 32 deletions

75
README.md Normal file → Executable file
View file

@ -1,46 +1,57 @@
# Specter Desktop
A flask web GUI for Bitcoin Core to use with airgapped hardware wallets
## DISCLAIMER
This is the working alpha branch. Random comments, weird pieces of code and comments, not documented, breaking changes etc.
This software is **WORK IN PROGRESS and NOT READY TO USE YET**.
Wait until we merge it to master, then you can use it.
## Why?
## TODO
Bitcoin Core has a very powerful command line interface and a wonderful daemon. Using PSBT and HWI it can also work with hardware wallets, but at the moment it is too linux-way. The same applies to multisignature setups.
- Send transaction:
- save psbt that is not finished
- upload file and combine psbt
- determine who else should sign (just look up pubkeys)
- show as qr
- work with coldcard to fix their multisig
- Display cosigners xpubs
- Migration between app versions?
The goal of this project is to make a convenient and user-friendly GUI around Bitcoin Core with a focus on multisignature setup with airgapped hardware wallets.
### Later:
At the moment we are working on integration of our [Specter-DIY hardware wallet](https://github.com/cryptoadvance/specter-diy) that uses QR codes as a main communication channel, and ColdCard that uses SD cards. Later on we plan to integrate "hot" hardware wallets using [HWI tool](https://github.com/bitcoin-core/HWI) and [Junction](https://github.com/justinmoon/junction).
- Import wallet from coldcard
- Show addresses QR codes in the PSBT
- Delete wallets (requires access to the wallet folder - can only unload remotely)
## How to run
### A bit later:
Clone the repo, install dependencies:
- proper error handling
- run flask server from distribution
- run bitcoind and bitcoin-cli from the distribution
- bitcoin configuration gui
```
git clone https://github.com/cryptoadvance/specter-desktop.git
pip3 install flask flask_qrcode flask_socketio
```
### Nice to have
Run the server:
- control fee
- Tx batching (sendtomany)
- coin control
- rbf
- privacy mode - hide balances and/or menu bar (can be in settings)
- mobile version
- use vue js?
- specter-pi - airgapped bitcoin core for signing on pi
```
cd specter-desktop
python3 server.py
```
### Far in the future
Your bitcoin node should have `rpcuser` and `rpcpassword` set in the `bitcoin.conf` file.
- remote node over tor - camera requires https, how to solve? (let's encrypt doesn't work)
## A few screenshots
### Adding a new device
![](screenshots/devices.jpg)
![](screenshots/device_keys.jpg)
### Creating a new wallet
![](screenshots/wallets.jpg)
![](screenshots/new_multisig.jpg)
### Wallet interface
![](screenshots/transactions.jpg)
![](screenshots/receive.jpg)
![](screenshots/send.jpg)
### Configuration
![](screenshots/bitcoin-rpc.jpg)

BIN
screenshots/bitcoin-rpc.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 210 KiB

BIN
screenshots/device_keys.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 309 KiB

BIN
screenshots/devices.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

BIN
screenshots/new_multisig.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 209 KiB

BIN
screenshots/receive.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

BIN
screenshots/send.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 198 KiB

BIN
screenshots/transactions.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

BIN
screenshots/wallets.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 KiB