Skip to content

privkeyio/puck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Puck

Nostr Wallet Connect (NIP-47) server in Zig with LNbits backend.

Features

  • get_balance - Check wallet balance
  • get_info - Wallet info
  • make_invoice - Create invoices
  • pay_invoice - Pay bolt11 invoices
  • lookup_invoice - Check payment status

Quick Start

  1. 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"
  1. Build and run:
zig build
./zig-out/bin/puck

Connect a Wallet

Generate a connection string:

nostr+walletconnect://<PUBKEY>?relay=<RELAY>&secret=<CLIENT_SECRET>
  • PUBKEY - Puck's pubkey (shown on startup)
  • RELAY - Your relay URL
  • CLIENT_SECRET - Random 32-byte hex (client generates this)

Use with Alby, Amethyst, Damus, or any NWC-compatible app.

Requirements

  • Zig 0.15+
  • LNbits instance with funded wallet

About

Nostr Wallet Connect Server

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages