It's clear to us that web / app services can integrate with LND to provide users with Lightning wallets, login-with-lightning, peer to peer payments etc. There are loads of lightning apps out there...
But when it comes to the developer experience for startups, what is the best way to provide lightning experience to end users?
Options I've identified and examples:
  • Stacker.News: LND transactions seem to be done on the pgsql level
  • Voltage.Cloud: trust a third party (Voltage) and use their rest API to connect to your API / App to Lightning (end users get custodial wallets, but atleast its easy to do)
  • Lightningdevkit.org (LDK) provide non-custodial wallets - but the documentation / dev experience is lacking the end to end integration guide because its so customisable.
Although there are many ways to skin a cat.... ultimately it comes down to needing a connection to LND... do you self-host with a cloud provider? if so.. which one? Or do you rely on a specialised service like voltage? When you have LND, how do you connect to it in such away that hackers can't drain funds? A middleware with special checks and balances?
Ultimately I want to build lightning services, but I'm a frontend dev with little backend experience. Are there any good recommendations or approachers other devs have learnt when integrating into lightning or creating new lightning apps?
It's all going to come down to what you're trying to do and how you're trying to do it. You identified the questions, what are your answers to them based on the website or app? Because even the question as to website or app is going to be different by itself. Are you trying to custody funds or are you trying to be non-custodial?
It's getting to the point that lightning has created an entire ecosystem, it's like asking "what's the best database to use at a startup?"
reply
if you ever in Austin come to PlebLab we help with stuff like this, we have also been providing weekend workshops on how to implement lightning into a web stack, check it out here: https://www.youtube.com/channel/UCoUUXOdWNOSv_MTtYXMUwDA
also our friends at bolt.fun has some great documentation as well.
reply
I'm not in the US unfortunately but that looks really cool! Love the discussions and vibe of the channel! :) Thanks!
reply
No problem 👍
reply
130 sats \ 1 reply \ @gd 4 Oct 2022
I feel like I'm making a "Senior Engineer meme" out of myself by saying "it depends".
Remember that a custodial lightning service is a financial service. You should expect to treat it with the same type of diligence that you would treat building the backend of a bank. In all honesty, I would suggest not doing it unless you are very confident in multi-layered security models and also uptime resiliency (if your server goes down, do people lose access to their money?).
Since you are a capable frontend dev, I'd suggest taking a look at WebLN: https://www.webln.guide/introduction/readme - it will allow you to offload the lightning backend to services listed on https://www.webln.guide/ressources/webln-providers. That way you can facilitate payments without having to touch the backend stuff.
reply
Yeah exactly... it gets complicated fast having to worry about node resiliency and security. Thanks for the WebLN link, I've not come across that before!
reply