Intro to Lightning Network Apps (LAPPs)

November 4, 2018

Everything Else

The idea of a second-layer scaling solution to Bitcoin, such as the Lightning Network, has far surpassed the days of ideation. Yet one of the most exciting features of the recently-implemented Lightning Network remains surprisingly undiscussed: the ability to build decentralized-like apps (known as Lightning Network Apps or LAppps) on top of the Lightning Network mainnet.

But I thought Bitcoin lacked smart contracts & isn’t turing-complete?

No matter. Answering the call to necessary & creative off-chain implementations, the day has arrived finally arrived when the Bitcoin ecosystem — through the lightning network — supports “decentralized-like apps.” Thanks to the innate infrastructure of multi-signature, off-chain transactions through LN’s payment channels.

The bi-directional, off-chain connection between exactly two nodes that enables lightning-fast transactions is defined as a payment channel. Any two nodes within the network can open a channel between each other by sending a diminutive amount of Bitcoin to open the payment channel. Once opened, users are free to send Bitcoin back & forth as many times as they’d like. Upon finishing their transactions, users can opt to essentially close the channel — the final balance is mined & only a single Bitcoin transaction is recorded on the Bitcoin blockchain.

However, a single node can have thousands of these two-way channels open at any given time — thus leading to scalability through a network effect.

To top it all off & arrive at the beginning of our journey, programming logic can also be introduced on top of a single node. Providing any single node the capability to host payment channels that track a type of automatized service or game. An image below shows all LN nodes as of September 17th at 2:12 pm:

Image for post
All active lightning network nodes via: https://explorer.acinq.c

LApps Overview

Lightning Network apps (“LApps”) availability on the Bitcoin blockchain address two key points. First, it’s no small secret that a lack of “decentralized apps” ecosystem within Bitcoin is one, if not the loudest gripe against the future of Bitcoin.

In many cases it’s the driving reason why crypto newcomers give Ethereum, Lisk, Cardano & an inexhaustible list of other blockchain platforms a second look. For better or worse, whether it’s true or not, the need for a blockchain-based smart contract & decentralized app environment seems like one of survival for blockchain projects. Quite suddenly, Bitcoin is quietly but surely edging in on of the most often cited key competitive disadvantages.

What does this mean for Bitcoin? Massive incoming adoption on multiple fronts: incoming blockchain developers, current Bitcoin hodlers & possibly other platform blockchain veterans. At a point in the not-too-distant future, it is an unlikely, but now possibly scenario that a majority of current dapp & smart contract engineers abandon their current blockchain of choice for the soundest of them all. Only time will tell; however, for now, no noticeable development communities have shifted sides.

Second, a major benefit of LApps is that since they’re built on the lightning network, they’re inherently structured for micro-transactions. Microtransactions drastically lower the barrier to entry; which again solidifies the notion that LApps are going to see a major influx of users & developers in the near future.

The current use cases for end users in Bitcoin world are, well, quite limited to financial activities; funding/managing wallets & exchanges. Not only does LN widen that variety, it packs a double-punch by focusing in on affordable experiences.

The real question regarding adaptability will ultimately stem, per usual, from the actual engineering output: how many LApps are in production?

LApps Directory

LApps are very much in their early days. The unofficial launch happening over Q1 this year as Blockstream introduced the micropayment processing API, Lightning Charge for the Lightning Network that utilizes Blockstream’s c-lightning implementation. Using a REST API that is accessible through JavaScript and PHP libraries, Lightning Charge makes it easy for web developers to accept Lightning payments for their content, goods, and services. In addition to Lightning Charge, a Scala implementation of LN also supports LAapps (more on this later).

Despite the relatively recent origins, a solid number of LApps have already been publicly deployed; all released LApps can be found in the official Lightning App Directory. Blockstream, the Bitcoin consulting behemoth with a significant amount of Bitcoin Core developers, quite publicly came out in support of LApps. In the latter half of March, Blockstream held a “Week of LApps” event dedicated strictly to the development & deployment of LApps. This intermittent development event alone resulted in seven LApps deployed — some of which are covered below. A qualitative, rudimentary categorization of public LApps, along with a few linked demo summaries can be see below:

Point-of-Sale & Vendor LApps

Accepting Bitcoin payments is a no-brainer for e-commerce platforms or custom web apps — however high fees & unpredictable confirmation periods previously made accepting Bitcoin an evangelical business decision at best. With LApps leveraging the Lightning Network, suddenly the two largest objections against Bitcoin adoption from an online business dissipate. It therefore follows that point-of-sale & vendor apps have taken the center stage as LApps begin rolling out:

  • Nanopos — A simple point-of-sale system for fixed-price goods
  • WooCommerce Lightning Gateway — A comprehensive e-commerce application that integrates with stock-management and order-tracking systems
Image for post

Content Creator LApps

A common use case for additional blockchain & supplementary tokens is the publishing, managing, & licensing of original digital content. How many dapps fall into this category? One doesn’t have to look too far to find a blockchain/token for publishing blog posts, tracking music metadata, or managing illustration artwork. Theoretically, any, original content medium likely has a launched (or failed) decentralized app. LApps undoubtedly unlock almost-free, frictionless payments with the largest cryptocurrency of them all — but without a standard form for digital tokenization, does the same level of incorrigible asset-tracking exist for content creating LApps?

Below are a few example of content-creating web apps built on top of the mainnet lightning network:

Image for post

Experimental-Recreational LApps

This third category of LApps represents experimental LApps that are mainly examples of existing technologies with lightning payments enabled. Let’s recall that the Lightning Network doesn’t necessarily enable decentralization as much as they enable frictionless Bitcoin payments — which certainly unlocks a vast amount of use cases previously economically infeasible to test out.

  • Lightning Jukebox — A fun demo that reimagines a classic technology for the Lightning Network
  • Nanotip — The simple tip jar, rebuilt to issue Lightning Network invoices

As seen above, a handful of minimal viable LApps are now live spanning across multiple use cases. The LApp ecosystem, while now publicly in-use, is admittedly still in its infancy stage — this does not take away from the extraordinary leap forward for Bitcoin that is the Lightning Network. Other blockchain platforms have beaten Bitcoin to the punch (particularly Ethereum’s ERC20 ecosystem), it’s likely that we see developers build copy-cat LApps of popular dapps — perhaps an equivalent CryptoKitties? Or a prediction marketplace to compete with Augur?

In order to catch up with the aforementioned examples, much work is needed. For now, no off-chain LN solution exists for tokenizing standards such as ERC20 or NEO5. Without digitizing assets through tokens (forget ICOs), can LApps really directly compete with decentralized apps?

Currently, two of the many LN implementations are seeing the majority of LApp activity. First, Eclair, which is a Scala implementation of the Lightning Network built by ACINQ. Eclair hosts four LApps including the flagship Eclair desktop app. Second, is the more popular LN implementation C-Lightning, which is, as the name suggests, a “C” implementation. C-Lightning LApps are built on the C implementation of the Lightning Network, they fall under the Elements Project.

Summary

See it with your own eyes through a visualizer: graph.lndexplorer.com/. The Lighting Network boat left the theory & alpha-stage dock longer than it seems — it’s now seamlessly scaling into a very real & practical off-chain Bitcoin solution.

For now, I’ll maintain neutrality in the likely future Dapps vs Lapps war. However, it’s my opinion that the winner of this war will not win due to a technical difference as much as end-user engagement. At the end of the day, the supposed early & late majority of dapp & lapp users will likely not care whether their transactions are confirmed off-chain, out-chain, in multiverses or hashed with Musk1024 — they simply want a smoother experience that’s centered around enabling this supposed blockchain thing that uses frictionless, magical digital money.

sources

Mastering Bitcoin: Programming the Open Blockchain