Nostr Wallet Connect (NIP-47) server in Zig with LNbits backend.
get_balance- Check wallet balanceget_info- Wallet infomake_invoice- Create invoicespay_invoice- Pay bolt11 invoiceslookup_invoice- Check payment status
- Create
puck.toml:
[nostr]
privkey = "nsec1..." # or hex
relay = "wss://relay.example.com"
[lnbits]
host = "http://127.0.0.1:5000"
admin_key = "your_lnbits_admin_key"- Build and run:
zig build
./zig-out/bin/puckGenerate a connection string:
nostr+walletconnect://<PUBKEY>?relay=<RELAY>&secret=<CLIENT_SECRET>
PUBKEY- Puck's pubkey (shown on startup)RELAY- Your relay URLCLIENT_SECRET- Random 32-byte hex (client generates this)
Use with Alby, Amethyst, Damus, or any NWC-compatible app.
- Zig 0.15+
- LNbits instance with funded wallet