Some checks failed
Build Docker / Build Images (map[dockerfile:Dockerfile tag_suffix: target:default]) (push) Has started running
Build Docker / Build Images (map[dockerfile:Dockerfile.hsd tag_suffix:-hsd target:hsd]) (push) Has been cancelled
Tests and Linting / Tests-Linting (3.11) (push) Has been cancelled
Tests and Linting / Tests-Linting (3.10) (push) Has been cancelled
Tests and Linting / Tests-Linting (3.13) (push) Has been cancelled
175 lines
4.7 KiB
Markdown
175 lines
4.7 KiB
Markdown
# FireWalletBrowser
|
|
## Installation
|
|
|
|
See [here](https://firewallet.au/setup) for instructions on how to setup a FireWallet
|
|
|
|
```bash
|
|
git clone https://github.com/Nathanwoodburn/firewalletbrowser.git
|
|
cd firewalletbrowser
|
|
python3 -m pip install -r requirements.txt
|
|
cp example.env .env
|
|
```
|
|
|
|
Edit .env to have your HSD api key.
|
|
If you have HSD runnning on a separate computer also add the IP here
|
|
|
|
For a quick and easy installation on ubuntu/debian you can run the install.sh script
|
|
```bash
|
|
curl https://git.woodburn.au/nathanwoodburn/firewalletbrowser/src/branch/main/install.sh | bash
|
|
```
|
|
|
|
## Usage
|
|
|
|
Make sure HSD is running then run the following commands:
|
|
|
|
On Linux:
|
|
```bash
|
|
python3 server.py
|
|
# Or for more verbose output
|
|
python3 main.py
|
|
```
|
|
|
|
On Windows:
|
|
```bash
|
|
python3 main.py
|
|
```
|
|
|
|
|
|
Then access the wallet at http://localhost:5000
|
|
|
|
|
|
Also available as a docker image:
|
|
To run using a HSD running directly on the host:
|
|
|
|
```bash
|
|
sudo docker run --network=host -e HSD_API=yourapikeyhere git.woodburn.au/nathanwoodburn/firewallet:latest
|
|
```
|
|
|
|
If you have HSD running on a different IP/container
|
|
|
|
```bash
|
|
sudo docker run -p 5000:5000 -e HSD_API=yourapikeyhere -e HSD_IP=hsdcontainer git.woodburn.au/nathanwoodburn/firewallet:latest
|
|
```
|
|
|
|
For Docker you can mount a volume to persist the user data (/app/user_data)
|
|
|
|
## Features
|
|
- Basic wallet functionality
|
|
- Create new wallet
|
|
- Import wallet from seed
|
|
- Send HNS
|
|
- Receive HNS
|
|
- Have multiple wallets
|
|
- View transactions
|
|
- View balance
|
|
- View wallet domains
|
|
- Domain management
|
|
- Transfer domains
|
|
- DNS Editor
|
|
- Renew domains
|
|
- Auctions
|
|
- Send open
|
|
- Send bid
|
|
- Send reveal
|
|
- Send redeem
|
|
- Download a list of all domains
|
|
- Resend all pending transactions
|
|
- Rescan
|
|
- Zap pending transactions
|
|
- View xPub
|
|
- Custom plugin support (find some [here](https://git.woodburn.au/nathanwoodburn?tab=repositories&q=plugin&sort=recentupdate))
|
|
|
|
## Themes
|
|
Set a theme in the .env file
|
|
**Available themes**
|
|
- dark-purple
|
|
- black
|
|
|
|
## Images
|
|
Login page
|
|

|
|
|
|
Home page
|
|

|
|
|
|
Transactions page
|
|

|
|
|
|
Send page
|
|

|
|
|
|
Transaction confirmation
|
|

|
|
|
|
Receive page
|
|

|
|
|
|
Settings page
|
|

|
|
|
|
Domain page
|
|

|
|
|
|
Domain management page
|
|

|
|
|
|
DNS Editor page
|
|

|
|
|
|
Auction page
|
|

|
|
|
|
## Environment variables
|
|
|
|
```yaml
|
|
HSD_API: HSD API key
|
|
HSD_IP: HSD IP address
|
|
THEME: Theme to use (dark-purple, black)
|
|
SHOW_EXPIRED: Show expired domains (true/false)
|
|
EXCLUDE: Comma separated list of wallets to exclude from the wallet list (default primary)
|
|
EXPLORER_TX: URL for exploring transactions (default https://shakeshift.com/transaction/)
|
|
HSD_NETWORK: Network to connect to (main, regtest, simnet)
|
|
DISABLE_WALLETDNS: Disable Wallet DNS records when sending HNS to domains (true/false)
|
|
INTERNAL_HSD: Use internal HSD node (true/false)
|
|
```
|
|
|
|
|
|
|
|
# Internal HSD
|
|
|
|
If you set INTERNAL_HSD=true in the .env file the wallet will start and manage its own HSD node. If you want to override the default HSD config create a file called hsdconfig.json in the same directory as main.py and change the values you want to override. For example to disable SPV and use an existing bob wallet sync (on linux) and set the agent to "SuperCoolDev" you could use the following:
|
|
```json
|
|
{
|
|
"spv": false,
|
|
"prefix":"~/.config/Bob/hsd_data",
|
|
"flags":[
|
|
"--agent=SuperCoolDev"
|
|
]
|
|
}
|
|
```
|
|
|
|
Supported config options are:
|
|
```yaml
|
|
spv: true/false
|
|
prefix: path to hsd data directory
|
|
flags: list of additional flags to pass to hsd
|
|
version: version of hsd to use (used when installing HSD from source)
|
|
chainMigrate: <int> (for users migrating from older versions of HSD)
|
|
walletMigrate: <int> (for users migrating from older versions of HSD)
|
|
```
|
|
|
|
## Support the Project
|
|
|
|
If you find FireWallet useful and would like to support its continued development, please consider making a donation. Your contributions help maintain the project and develop new features.
|
|
|
|
HNS donations can be sent to: `hs1qh7uzytf2ftwkd9dmjjs7az9qfver5m7dd7x4ej`
|
|
Other donation options can be found at [my website](https://nathan.woodburn.au/donate)
|
|
|
|
Thank you for your support!
|
|
|
|
## Warnings
|
|
|
|
- This is a work in progress and is not guaranteed to work
|
|
- This is not a wallet by itself but rather a frontend for HSD
|
|
- I am not responsible for any loss of funds from using this wallet (including loss of funds from auctions)
|
|
- I am not responsible if you expose this frontend to the internet (please don't do this unless you know what you are doing) |