Announcing Zap Desktop 0.4.0-beta

Yo, today is a good day. Zap Desktop v0.4.0-beta has been released 🎊 🎉. You can download the new release for Mac, Windows, and Linux here. You can find updated tutorials for 0.4.0 here.

You may not recognize Zap this time around. We have completely redesigned the channel UI, added better support for 3rd party integrations, improved error handling, allow advanced users to help test mainnet neutrino, and much more. However, the biggest takeaway from this release for me is the quality of work being developed at such a rapid pace. If you look at the zap-desktop repository's commit history you can see that the activity in the last four months is greater than the total amount of activity in Zap’s lifetime prior.

Zap’s desktop application has broken 40 contributors, sitting currently at 43, with many more not accounted for that are active testers and bug reporters. Thanks to our testers and contributors, Zap has never been more stable. The amount of bug reports from version 0.3.4 to 0.4.0 has been drastically reduced compared to prior releases. This leaves developers more time to build out new designs and features, improving the overall product. It is truly amazing to see this community gravitate towards this project and elevate it to unseen heights. So, with that being said, let’s take a look at Zap 0.4.0 and all it has to offer.

New Channel Management UI

One of the obvious low hanging fruits for improving Zap was the channel UI. Before 0.4.0, the channel UI was awkwardly placed and the opposite of helpful. When revisiting the idea of channels, we realized they aren’t relevant to users by default. Many users elect to use autopilot and don’t pay much attention to channels. They don’t route, they don’t balance liquidity, and most importantly they don’t care. Sticking channels in our users face by default was actually intimidating to most. So, the first step was to simply remove the channel UI from the wallet UI. Zap may look like it lost some weight!

The next task was to figure out what an ideal channel UI inside of Zap would look like. This was going to be a place inside the app where advanced users and routing nodes live. Where all relevant data was easy to digest and process. So now through your user settings, you can manage your node’s channels with Zap’s new channel management UI.

Here a user can easily manage and view their channels holistically or in great detail.

We’ve also revamped the flow for creating channels. When creating a channel within Zap, you’re now presented with a nice “Suggested Nodes” list, where Zap will recommend some of the better known routing nodes to get users onboard. Of course, users can also search the network or paste in any node URI and open a channel with anyone they’d like.

Lastly, our channel forms have improved greatly, with added features like the ability for users to customize their fee.

There are many more things we plan on adding to Zap’s Channel Management UI in the coming releases such as visual graphs + charts, channel rebalancing features, Bitrefill’s Thor integration, and Lightning Lab’s Loop integration. But we are confident in this new start and excited for everyone to give it a try!

Improved Onboarding

Zap 0.4.0 comes with improved and hardened onboarding. Adding better support for remote nodes with the new and improved lndconnect, ability to edit node settings, file selection for remote node connection, and much more.

Mainnet Neutrino opt-in

Zap Desktop 0.4.0 allows advanced users to run Zap (neutrino) on mainnet with no remote node setup required. This was a debated topic within the Zap community, and I wanted to touch on it quickly. This feature is intended for advanced users and developers. When selecting mainnet, Zap gives you a highlighted warning letting you know you may lose funds and urges users to use testnet. There are many known issues with neutrino as it stands today, and features like watchtowers and channel backups have yet to land in LND. This is strictly for testing, bug reporting, and iterating on the UX for mainnet LN neutrino clients. Users electing to use neutrino on mainnet may lose money.

We’ve also implemented much better error handling in Zap 0.4.0 for many reasons, one is making it easier to report errors to developers. For advanced users who do decide to help test, we’d greatly appreciate errors reported to Zap and/or LND!

Thanks

That wraps up the high-level highlights within Zap 0.4.0. You can find the release’s full changelog here. We’re excited for everyone to give 0.4.0 a spin!

The overall stability and general improvements in this release are a direct reflection of the growing number of testers, contributors, and community members. 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.

Lots more comin’, talk soon. Cheers 🍻😃.