[BREAKGLASS] A Bitcoin Multisig Coordinator
Go to file
Nick Klockenga 50f870faa4
Some checks failed
Xcode - Build and Analyze / Build and analyse default scheme using xcodebuild command (push) Has been cancelled
Xcode - Unit Tests / Run unit tests using xcodebuild (push) Has been cancelled
SwiftFormat Check / Check code formatting with SwiftFormat (push) Has been cancelled
Feature to format bitcoin addresses in 4 character chunks (#17)
* format bitcoin addresses in 4 character chunks for increased readability

* add formating to verify wallet screen
2026-04-06 22:44:31 -04:00
.github/workflows remove 26.2 requirement 2026-04-01 10:20:06 -04:00
hellbender Feature to format bitcoin addresses in 4 character chunks (#17) 2026-04-06 22:44:31 -04:00
hellbender.xcodeproj bump build version to 23 2026-03-30 23:01:59 -04:00
hellbenderTests fix the testnet3 port 2026-04-01 10:19:07 -04:00
hellbenderUITests Replaced the transaction screen's balance card with a hero header featuring a wallet picker dropdown overlay that supports switching wallets, adding new wallets, and editing/deleting wallets — moving all wallet management out of Settings. Added wallet identicons (unique color grids per wallet) to the picker and header, and added a "Wallet Info" option to the transaction screen's menu. Improved the Electrum connection status to show "Connected" as soon as the chain tip is fetched rather than waiting for a full sync to complete. Changed the default address gap limit from 50 to20, and made various UX improvements including larger tap targets, consistent Done button styling, and auto-focus on wallet rename. 2026-03-29 22:39:30 -04:00
.gitignore Release v0.1.1 2026-03-16 21:37:16 -04:00
.swiftformat Release v0.1.1 2026-03-16 21:37:16 -04:00
LICENSE Release v0.1.1 2026-03-16 21:37:16 -04:00
README.md Release v0.1.1 2026-03-16 21:37:16 -04:00

Hellbender

Hellbender

Travel to your private keys and leave your laptop at home.

Welcome Transactions Multisig Config Import Descriptor Review Wallet


Hellbender is an iOS Bitcoin multisig coordinator written in Swift. It operates as a watch-only wallet — private keys never touch your phone. Coordinate signing across air-gapped hardware wallets using animated QR codes, bringing cold storage security with mobile convenience.

Features

  • Watch-only architecture — only public descriptors are stored on the device
  • Air-gapped QR signing — UR and BBQR animated QR codes for PSBT exchange
  • Configurable M-of-N multisig — 2-of-3, 3-of-5, and beyond
  • Full BIP-174 PSBT workflows — create, sign, combine, and broadcast
  • UTXO management — coin control and coin freezing
  • RBF fee bumping — replace-by-fee support for stuck transactions
  • Multi-network support — mainnet, testnet3, testnet4, and signet
  • Biometric security — Face ID / Touch ID lock
  • Descriptor import/export — QR scan, clipboard, and PDF export
  • Electrum server integration — connect to your own node or a public server
  • Multi-wallet profiles — manage multiple wallets in one app

Building

Requirements

  • Xcode 16.2+
  • iOS 18.6+ deployment target
  • Swift 5.0

Dependencies

All dependencies are managed via Swift Package Manager and resolve automatically:

Package Purpose
BitcoinDevKit (bdk-swift) Bitcoin operations
URKit UR encoding/decoding
URUI QR display and scanning
Bbqr BBQR encoding

Build Steps

  1. Clone the repository
    git clone https://github.com/newtonick/hellbender-wallet.git
    cd hellbender-wallet
    
  2. Open hellbender.xcodeproj in Xcode
  3. SPM dependencies resolve automatically on first open
  4. Build and run on a simulator or device

CI

GitHub Actions runs xcodebuild clean build analyze on every push and pull request to main.

License

MIT License — see LICENSE for details.

Hellbender's dependencies use permissive licenses compatible with MIT: bdk-swift (MIT/Apache-2.0), URKit (BSD-2-Clause-Patent), URUI (BSD-2-Clause-Patent), Bbqr (Apache-2.0).