Skip to content

A Dart implementation of lnurl to decode bech32 lnurl strings.

License

Notifications You must be signed in to change notification settings

saentari/dart_lnurl

 
 

Repository files navigation

dart_lnurl

pub package

A Dart implementation of lnurl to decode bech32 lnurl strings or raw (non bech32-encoded) URLs. Currently supports the following tags:

  • withdrawRequest
  • payRequest
  • channelRequest
  • login

Features

  • ✅ Decode a bech32-encoded lnurl string.
  • ✅ Handle LUD-17: Protocol schemes and raw (non bech32-encoded) URLs.
  • ✅ Make GET request to the decoded ln service and return the response.
  • ✅ LinkingKey derivation for BIP-32 based wallets.

Learn more about the lnurl spec here: https://github.com/fiatjaf/lnurl-rfc

API Reference

Future<LNURLParseResult> getParams(String encodedUrl) Use this to parse an encoded bech32 lnurl string or raw (non bech32-encoded) URLs, call the URI, and return the parsed response from the lnurl service. The encodedUrl can either have lightning: in it or not.

String decryptSuccessActionAesPayload({LNURLPaySuccessAction successAction, String preimage})

When doing lnurl pay, the success action could contain an encrypted payload using the payment preimage. Use this function to decrypt that payload.

Supported LUDs

🟢 fully supported, 🟠 partially supported, 🔴 not supported.

About

A Dart implementation of lnurl to decode bech32 lnurl strings.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dart 100.0%