Announcing Zap Desktop 0.3.0-beta

Jack Mallers
5 min readDec 21, 2018

Yo. Today I’m thrilled to release the all new Zap Desktop v0.3.0-beta 🎊. You can download the new release for Mac, Windows and Linux here. You can find a getting started tutorial here and video series that walks you through initial download to making a Lightning payment here.

In a talk I gave at Chaincode Labs Lightning Residency recently, I said Zap prides itself on having a responsive design. Not a responsive design in that it responds well to various screen sizes, but rather responsive design as an attitude. Zap is comfortably available in response. Available in response to what you might ask? Well, with the pace of Bitcoin and Lightning innovations reaching new highs, it’s important that Zap mirrors this speed and fluidity. A few months is the equivalent to a few years in this space, and the general confidence and relationship people have with this asset and technology has been changing rapidly. With Zap we have no firm opinion on how a channel should look, how a form should handle a Lightning invoice, how to display the combination of channel balance and chain balance, etc. Zap is forever evolving and changing, embedding itself into the ever-changing environment that is Bitcoin today. Zap is a reflection of the current state of the community, its desires and general hopes for the future.

So with that being said, let’s take a look at the rebuilt, redesigned, and repurposed Zap Desktop 0.3.0.

New Zap Launchpad

With Zap 0.3.0 users will notice a new home screen, or what we like to call, the Launchpad. The Launchpad allows you to create, manage, and configure multiple wallets; neutrino light client wallets, remote nodes and BTCPay Server instances all supported in one simple and clean interface.

Something we’ve learned over the last six months is that users tend to use Zap Desktop much differently than Zap iOS. The Desktop app seems to be a home base of sorts. Users use Zap Desktop to control many different nodes and manage many different wallets, channels, liquidity, etc. Zap iOS is used more like Cash App: a quick and simple way for users to spend bitcoins on various services. We wanted to redesign our Desktop application to better reflect what users wanted out of it. With the Launchpad users can now create and manage as many wallets as they’d like, easily connect and drive remote nodes, or control their BTCPay Server.

Wallet Configuration

You can now configure your autopilot settings within Zap from the Launchpad. You can completely turn it off, change the percentage of your balance autopilot uses, and configure things like the max amount of channels and the size of those channels. This type of flexibility is a huge improvement in user experience and allows users much more control over their Lightning experience.

LNDConnect

With technology like neutrino still in an early testnet only state, Zap is frequently used to connect to remote nodes with a more stable Lightning stack. Historically, the process of connecting Zap to a remote node has been painful to say the least. There is a lot of room for improvement going forward, but we got the ball rolling with lndconnect. lndconnect allows other services, such as Pierre Rochard’s Node Launcher or the Casa Node, to host a “Connect to Zap” button that will open Zap and automatically connect to the remote node. Alternatively, lndconnect potentially allows Zap Desktop to host a “Connect to Joule” button in the future that would seamlessly onboard users to the Joule browser plugin, or other external services. We encourage all developers to take a look at the lndconnect documentation here and integrate with Zap/give us feedback!

Litecoin Support

It’s true, in response to user requests, Zap now supports connecting to remote Litecoin Lightning nodes. Although the Lightning Network was conceptualized with scaling Bitcoin in mind while adding some privacy enhancements, it is a protocol designed agnostic to the underlying blockchain. The Litecoin dev team is currently working on implementing neutrino (light client) support within LTCD, so that one day users can launch their wallet on the Bitcoin blockchain, log out, and then switch chains to Litecoin. This is not supported yet, but potentially soon. For now you can simply connect to a remote Litecoin LND node to use Litecoin + Zap if you’d like.

New Payment Flow

Zap Desktop 0.3.0 has an all new sending/receiving flow that vastly improves on prior versions. New design, fee estimation, ability to specify amounts on zero value invoices (tippin.me) and much more.

Fee Estimation

Previously Zap would push your Lightning payment out into the wild without much context. There were a few issues with this, mainly the fact that users were blindly agreeing to pay an invoice without first querying the network to get a sense of what the fee may be. Zap 0.3.0 fixes this by querying the nodes local graph for routes the node would use when sending a payment. This results in the simple and clean fee UI above, giving users a small range of what their fee will be if they send the payment.

Paying zero value invoices

Zero value invoices are very cool, allowing the sender to specify the amount as oppose to the requester. We recently saw an implementation of this with the new tippin.me service. Previously, Zap Desktop wouldn’t allow you to pay these invoices as the app assumed an amount in the invoice. Now, if Zap detects a zero value invoice the user will be able to add the amount they’d like to send through a simple UI.

Thanks

That wraps up the high level highlights within Zap Desktop 0.3.0. We ask and encourage everyone to give it a spin as there is also a long list of bug fixes and stability improvements packaged in as well.

The improvements and progress in this release is due to all the testers, bug reporters, contributors and general community support. Thank you ✊.

You can contact me @JackMallers on twitter or zap@jackmallers.com via email. For bug reports, troubleshooting, feature requests, etc. we encourage you to open issues on our Github repository and/or join our slack.

Till next time friends. Enjoy and happy holidays from Zap and myself 🎄🍻

--

--