Inspiration
As the Nostr ecosystem grows, so does the demand for smooth, native Lightning integration within its apps. Nostr Wallet Connect (NWC), defined in NIP-47, provides a powerful way to connect wallets to Nostr clients — but there are very few wallets that currently support it.
From my own experience, I had only used one such wallet that supported NWC (alby), and I felt there was a strong need for a self-custodial, mobile-first alternative. I built Nostrpay to empower users with full control over their keys, private channels, and seamless NWC connectivity — all while prioritizing security and decentralization.
What it does
Nostrpay is a self-custodial Bitcoin Lightning wallet mobile app with full support for Nostr Wallet Connect (NWC), following the NIP-47 standard.

How we built it
- Flutter: To build the UI
- Lightning Development Kit (LDK): Runs a Lightning node on the device, giving full wallet functionalities
- Olympus LSP API: For getting just-in-time (JIT), 0-conf payment channels
- nwc_wallet package: Implements the Nostr Wallet Connect (NWC) protocol
- Secure Storage: Mnemonic and wallet data are stored securely using KeyStore (Android) and Keychain (iOS).
- NIP-06: Used to derive both wallet and NWC keys from a single mnemonic, so users don’t need to manage multiple keypairs.
Challenges we ran into
- Olympus LSP Integration: Understanding Olympus’s API structure (fee endpoints, channel proposals, etc.) and fitting it into the flow took significant effort.
- Testnet Funding Issues: During testing, the mutinynet faucet stopped working and returned "no payment route" errors, which blocked progress temporarily. I eventually transferred funds manually from another wallet on my phone to continue testing.
Accomplishments that we're proud of
Everything
Demo Video
https://youtu.be/VAnNt-Th8No?si=ld6Ro6-lgCx_N7gO
Links
- GitHub: https://github.com/aniketambore/nostrpay_wallet
- Twitter/X: https://x.com/Anipy1
- Nostr: npub1clqc0wnk2vk42u35jzhc3emd64c0u4g6y3su4x44g26s8waj2pzskyrp9x
Built With
- flutter
- ldk
- nostr
- olympus-api

Log in or sign up for Devpost to join the conversation.