Blog
FOSS Friday - March 29, 2024

FOSS Friday - March 29, 2024

Stephen DeLorme
Stephen DeLorme

April 5, 2024

Here's an update from the Voltage team on the latest FOSS Friday.

What is FOSS Friday?

FOSS Friday is our bi-weekly innovation day at Voltage! On these days, our team dives into the exciting world of FOSS (Free and Open Source Software). Why, you may ask? Well, Bitcoin and the Lightning network, the very core of our work, are open source technology. 

As a bitcoin infrastructure company, we don't just use open source; we actively contribute to it. This is a symbiotic relationship for us: by contributing to these projects, we can do our part to bolster the bitcoin ecosystem while also uncovering fresh, innovative ideas.

What did we do?

Doppler REST Support

Doppler is a domain-specific language for Lightning that enables developers to easily experiment with and test against various Lightning implementations. Taylor worked on adding REST calls to Dopppler. What does this mean? Currently, Doppler uses RPC commands to talk to LND Lightning nodes, which works best in a more local environment, such as running some Docker containers on your development machine. However, Taylor’s work to add REST support has unlocked the ability to send Doppler commands to remote nodes. This means that developers can use these REST commands to control remote Mutinynet nodes, or any node on the network, for that matter. Currently external node support is only for LND, but he has plans to explain it to both CoreLN and Eclair. There are some commands that may still require Regtest or a local dev environment, such as stopping and starting the nodes, but having REST support will add a new degree of flexibility for users of Doppler. Read more about connecting to external nodes here

lndbalancer

Justin worked on lndbalancer, which is a port of his ceebalancer project. Ceebalancer is a plugin to help you manage lightning nodes better. It has 2 priorities. First, it sets fees in proportion to channel balance, which helps to incentivise channel rebalance. Secondly, it sets a maximum size for HTLCs. When Justin used this setting on a Core Lightning node many years ago, it dramatically reduced failed payments!

Justin’s latest goal has been to bring this same functionality to LND lightning nodes, which is why he is porting ceebalancer to his new lndbalancer. Today, he got lndbalancer talking to the LND node and retrieving basic info on channels.

LNDK

w3irdrobot continued working on an issue for LNDK. LNDK is a project that aims to implement BOLT 12 support externally to LND. LNDK is a rust project built using the Lightning Dev Kit. By running it alongside your LND instance, you get to play with cool features like reusable payment requests ("offers").

Today, w3irdrobot made a solution that “works”, but he is now trying to appease the Almighty Compiler.

Bitcoin Design

Stephen worked on Bitcoin Design Community Projects. He spent time reviewing Christoph Ono’s PR “Adds new page about human readable addresses”. This PR adds a page to the Bitcoin Design Guide about human readable payment instructions, which includes things like the BIP for DNS payment instructions as well as lightning address and paynyms. Stephen also contributed a concept for a post design for the Bitcoin Design Community’s event at BTC Prague Hack Day.

That’s all for this week!

Share this post

Start Building on Bitcoin Now