Curious if anyone knows why LND is the preferred implementation for both small node runners and large nodes. Was it simply first into the race or are their some interesting technical aspects that give it an advantage over other lightning implementations?
In the past I've run to test all LN implementations: LND, CLN, Eclair, PhoenixD, LDK, Electrum. I think each one have its own particular use case.
LND is much easier to install and maintain and also connect other apps to it, as a node operator. Indeed LND is a hungry server, taking more resources than CLN and the others.
I cannot speak from the perspective of a wallet and apps developers why they prefer LND backends, because I do not write code.
reply
could you be more specific about particular use case ... maybe you can write some example for each implementation. thank you very much.
reply
I think it’s because LND was early and has beautiful documentation. Their APIs are well documented and spell out options and behaviors, and best of all, the docs offer examples for gRPC, REST, and command-line, and examples typically include popular languages, like JavaScript and Python. Here a nice example that helps you increase fee rate if your channel operation is bogged down in the mempool. It automatically figures out when to CPFP or RBF - nice!
Being early and good won it inclusion into all of the “LN node kits,” like Umbrel and RaspiBlitz, which is what plebs mostly reach for, since LN operations can be a lot of work if you go it alone without the help of these packages.
Thus, you wind up with lots of developers, companies, and plebs using LND.
reply