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?
Voltage Tipper
Austin worked more on the Voltage Tipper. This is a project to create an easy way to receive tips over Lightning which can be connected to a Lightning node on Voltage. From there, the Voltage tipper watches the node to check for paid invoices. It also uses LNURL to provide a Lightning address as a payment option.
This past Friday, he worked on making it easier for people to deploy the Voltage tipper. It now has an updated readme file with a “Deploy to Vercel” button. From there, you only need to paste in an invoice macaroon and other connection variables for your Voltage node. He also created a Repl of the Voltage Tipper which can be deployed with Replit’s deployment feature. It may be possible for someone with no web developer experience to deploy the Voltage tipper!
NOAA Data Pipeline
NOAA Data Pipeline is a project that allows you to query for weather data inside the web browser. It takes in raw data from NOAA and makes it much more easily searchable.
Taylor worked on converting his noaa-data-pipeline project into a data oracle, specifically for use with DLCs created by the dlctix crate. As a data oracle, the NOAA Data Pipeline could attest to weather information such as wind speed, temperature, etc. This signed data could then be used inside of Discrete Log Contracts (DLCs). In other words, people can create bitcoin transactions whose outcome depends on the signed data from the weather station.
Bitcoin Core Mutinynet Tutorial
Brandon worked on an upcoming blog post tutorial for developers. In it, he discusses the pros and cons of various bitcoin test networks. Then, describes how to launch a Bitcoin Core node on Voltage connected to Mutinynet. From there, he gets into how to get your credentials and make RPC connections to your node. He included examples for making RPC calls with Javascript, Python, and Rust.
Bitcoin Dev Project, BOLT12.org, TwelveCash
Stephen made small updates to a couple of projects. He spent time consulting with the Bitcoin Dev Project on their website and did some logo design work for the project. After that, he merged some UI updates to the latest Twelve Cash beta and then added some new projects to the BOLT12.org website.
Bitcoind TLS Proxy
Miller and Taylor created a tool called bitcoind-tls-proxy that helps you connect to your Bitcoin Core node more securely. Basically, some clients do not contain native support for TLS encryption, such as bitcoin-cli. While you can use curl to make JSON-RPC calls, it requires a lengthy command and may not be suitable for many use cases:
curl --user alice:mypassword --data-binary '{"jsonrpc": "1.0", "id": "curltest", "method": "getblockchaininfo", "params": []}' -H 'content-type: text/plain;' https://example.b.voltageapp.io:8332
Wouldn’t it be nicer if we could use bitcoin-cli or ZMQ instead? To enable this, Bitcoind TLS Proxy runs locally on your client or dev machine and establishes an encrypted tunnel with the TLS gateway in front of your Bitcoin Core node. You can then make bitcoin-cli commands to your local proxy, which in turn will communicate securely over TLS with Bitcoin Core. Instead of the above curl command, you would simply use:
bitcoin-cli -rpcconnect=localhost:8332 -rpcuser=alice -rpcpassword=mypassword getblockchaininfo
This should work for any Bitcoin Core node behind a TLS gateway, however, it has only been tested with Bitcoin Core nodes on Voltage as of this writing.
—
That’s all for this week!