"Pub" is a nostr
native account system that makes connecting your node to apps and websites super easy.
Using Nostr relays as transport for encrypted RPCs, Pub eliminates the complexity of WebServer and SSL configurations.
By solving the networking and programability hurdles, Pub enables node-runners and Uncle Jim's to bring their Friends, Family and Customers into Bitcoin's permissionless circular economy. All while keeping the Lightning Network decentralized, and custodial scaling free of fiat shitcoin rails and large banks.
- Wrapper for
LND
that can serve accounts over LNURL and NOSTR - A growing number of methods
- Accounting SubLayers for Application Pools and Users
- A fee regime allows applications owners to monetize users, or node operators to host distinctly monetized applications.
- Management Dashboard is being integrated into ShockWallet
- Nostr native "offers"
- Channel Automation
- Bootstarp Peering (Passive "LSP")
- Subscriptions / Notifications
- Submarine Swaps
- High-Availabilty / Clustering
Dashboard:
ShockWallet and Lightning.Pub are free software. If you would like to see continued development, please show your support :)
WARNING: While this software has been used in production for many months, it is still bleeding edge and security or reliabilty is not guaranteed.
- The service defaults to port
8080
- Use of a reverse proxy is only required if you wish to serve LNURLs
- Requires Node.js >=18.x
- Run LND - Example mainnet startup:
./lnd --bitcoin.active --bitcoin.mainnet --bitcoin.node=neutrino --neutrino.connect=neutrino.shock.network --routing.assumechanvalid --accept-keysend --allow-circular-route --feeurl=https://nodes.lightning.computer/fees/v1/btc-fee-estimates.json
- Download and Install Lightning.Pub
git clone https://github.com/shocknet/Lightning.Pub
cd Lightning.Pub && npm i
-
cp env.example .env
-
Add values to env file
-
npm start
-
Create an Application Pool
A default "wallet" pool will be automatically created and keys generated automatically, if you wish to create something other:
curl -XPOST -H 'Authorization: Bearer defined_in_constants.ts' -H "Content-type: application/json" -d '{"name":"ExampleApplicationPoolName"}' 'http://localhost:8080/api/admin/app/add'
- Connect with wallet2 using the npub response in step 6 or the the wallet application nprofile logged at startup.