I need help to test Split Donation (name is wip)

:zap:plit Donation(s?)

(it has the :zap: because it is lightning, i am bad with names)

I’ve been working on this web app for few days, its goal is to split the donations (and possibly some of the extra funds we have on opencollective) toward the community.

You can see a screnshot below:

Eventually I’d like to integrate it with @richtea’s jme-initializer to prompt to donate to the authors of thirdparty libraries when they are selected, you could see this as an npm fund with better ux for jme community libraries.

What Why How

TL;DR is that this is built on top of the Bitcoin Lightning Network, you might have heard of it since it has been adopted by services like twitter and some small countries lately, it is basically an ultra fast transaction layer secured by the Bitcoin blockchain.

The interesting part is that with this we don’t need to handle money on our backend but we can instruct the browser to do it mostly clientside, albeit this uses a temporary account on an LNDHub instance (basically a shared lightning node) to receive the donation with a single payment, however this account lasts only the few seconds needed to split the donation, it is created and operated by the browser with random credentials and we do not control the LNDHub (it’s a public instance, actually the app allows the donor to change it, eg. with a self hosted one if he wishes so).

But what if i hate the bitcoin?

You can still use it with a dollar-lightning bridge like Strike.me (currently operating only in the US, El Salvador and Argentina, there are alternatives for the EU, but i need to do some researches before proposing them).

What about OpenCollective

i am working on a way to connect this also to opencollective, since oc doesn’t support the lightning network atm, the idea is to basically bridge the lightning transaction to one of the supported low fee shitcoins cryptocurrencies with an instant exchange like fixedfloat.com. It involves some trickery but the idea seems promising. The reason for this is to provide a single interface for donations.

Please help

As you can guess from the text on the sliders, the app can pull data directly from github, so, since i will try to test run this on the real lightning network sometime in the following days, if you are a contributor on one of our repos (ie. you’ve sent at least one commit ever) you can help me by adding a lightning address to your github account and see if you receive some satoshis (Satoshis are like the units of bitcoins) when i send the donations (i will write here when i do it).

Adding a ln address is very simple:

Getting the lightning address

First you need to create a lightning address.
The easiest way is to install the browser plugin Alby (it’s a chrome/firefox plugin, kinda like metamask if you know it) and chose to use the Alby Wallet when asked on the first setup.

It will ask then to create a lightning address that looks something like rblb@getlaby.com (this is mine btw).
Don’t worry, It won’t ask for your personal data and such, it takes like two minutes to setup the account.

Adding the lightning address to github

Then you need to add it to your github, in a way that :zap:plit Donation can understand.
There are currently two ways to do it:

  1. Adding :zap:your@lightning.address to your bio (eg. ⚡rblb@getalby.com), however other apps look for this so you might end up signaling them too

  2. The more “private” way to do it is to create a public gist with this name .test-dodj39.json
    And this content:

{      
  "addr":"your@lightning.address",
  "enabled":true
}

You can see mine here: .test-dodj39.json · GitHub.

:zap:plit Donation will automatically search for this in your github account.

Please let me know if you decide to partecipate to this test.

Note: this is a prototype, i might not end up deploying it if i am not convinced with the result

5 Likes

I have created an Alby wallet acc and a .test-dodj39.json to test this.

3 Likes

I’ve made two tests.
One that sent ~400 sats to each contributor.
And another one that sent ~245 sats to each contributor + 5609 sats to jMonkeyEngine’s Open Collective by converting them to 2.718 MATICs with fixedfloat api ( 0x96c6de54cde23b5223d0c7a6328602ef83bc680a51d214aad429c180f169958c ) .

The second donation was around 1,86 $ and the total transaction fee was ~0.06$ that is the sum of ~0.001$ lightning fees, ~0.00040887$ Polygon/MATIC fees and the combination of fixedfloat’s fee and their conversion rate on BTC/MATIC pair.

I am waiting for the transaction to appear on OC to see what their fees are.

2 Likes

2 Likes

So… it seems there are some issues on their end regarding this crypto payment… i am waiting to hear back from the support. I might release this without the Opencollective bridge if it is not solved soon

2 Likes

So… i’ve heard back from them.
It seems they have an issue with the specific crypto i decided to use as bridge (the luck…), i’ve changed the code to bridge BTCLN to LTC instead of MATIC and it seems to be working fine (also has similar fees and speed… for now… probably not a good solution long term, but hopefully oc will adopt the lightning network at some point) .

I made another test donation where 461 SATS went to contributors and 6595 SATS to OC that were then converted to $1.44 by their system.

It seems everything is working as expected…

3 Likes

Yeah i received this with description ‘Test donation 2’:

1 Like