Difference between revisions of "Challenges May 2020"

From fulmo
Jump to navigation Jump to search
(New channelge: rust LN node)
(More details on lightning node challenge)
Line 89: Line 89:
  
 
We will try to build a node that is highly modular and is ready for the future LN extensions. More information here: https://github.com/LNP-BP/lnpd
 
We will try to build a node that is highly modular and is ready for the future LN extensions. More information here: https://github.com/LNP-BP/lnpd
 +
 +
During the hackathon we will try to:
 +
* compose core architecture with non-blocking multithreading
 +
* add lightning network wire protocol
 +
* implement BOLT-9 (using rust-lightning it should be simple)
 +
* implement BOLT-1: do connection to other LN nodes + send/receive `connect`, `ping` & `ping` messages
 +
* (optionally) implement gossip protocol
  
 
==Adding your Project==
 
==Adding your Project==
  
 
Feel free to add a challenge yourself! The wiki is open to any Bolter (you'll figure out how to edit.) Get in touch on [https://mm.fulmo.org/fulmo/channels/lightning-hacksprint Mattermost] for more information and collaboration.
 
Feel free to add a challenge yourself! The wiki is open to any Bolter (you'll figure out how to edit.) Get in touch on [https://mm.fulmo.org/fulmo/channels/lightning-hacksprint Mattermost] for more information and collaboration.

Revision as of 15:31, 3 April 2020

How to participate

If you like to get a better overview of the challengers, join the kickoff live stream. You may also join later on.

Most projects listed their challenges as sprint issues on Github, simply comment on those that you are interested in and the project mentors should get back to you.

Also register on https:/mm.fulmo.org and let us know in the channel "Lightning HackSprint" what you like to work on.


Projects with Challenges

This is the list of Lightning Network related projects that registered for the HackSprint so far:

RaspiBlitz

Github issues with label "hackathon": github.com/rootzoll/raspiblitz


LightningATM

Github issues with label "hackathon": github.com/21isenough/LightningATM


LNBits

https://github.com/arcbtc/lnbits


RTL (Ride The Lightning)

https://github.com/Ride-The-Lightning/RTL


Quickening - Room77 Point of Sale

https://github.com/arcbtc/M5StackSats


Lightnite

https://issues.lightnite.io


Specter-Desktop

https://github.com/rootzoll/raspiblitz/issues/1059#issuecomment-605526623


TOR2IP-Tunnelservice

TOR2IP-Tunnelservice


SendMany App

https://github.com/fusion44/sendmany https://github.com/rootzoll/raspiblitz/issues/1000#issuecomment-605526180


Lightning Spam Protection

Turn this prototype https://github.com/thorie7912/LightningPayment to add a Lightning SpamProtection into a Media Wiki Extension thats easy to install and config on a standard Media Wiki.


The Eye of Satoshi (python-teos)

Github issues with label "hackathon": github.com/talaia-labs/python-teos


Exchange Union/OpenDEX

Integrate c-lightning as swap client (and more): https://github.com/ExchangeUnion/xud/issues?q=is%3Aopen+is%3Aissue+label%3Ahackathon


getroutevia: a c-lightning plugin for route search with restrictions

Find routes that satisfy additional criteria, for instance, must [not] go through certain nodes. More info and discussion here: https://github.com/s-tikhomirov/getroutevia/issues/1


Rust Lightning network node

Another LN node? Why we need it?

The problem with the existing Lightning node implementations is their very limited extensibility for such things as:

  • future LN upgrades (channel factories, pay-to-ec-point, taproot),
  • protocols on top of LN (layer 3), like DLCs on LN or proposed Lightspeed payments, which require modification on the structure of the commitment transaction.

We will try to build a node that is highly modular and is ready for the future LN extensions. More information here: https://github.com/LNP-BP/lnpd

During the hackathon we will try to:

  • compose core architecture with non-blocking multithreading
  • add lightning network wire protocol
  • implement BOLT-9 (using rust-lightning it should be simple)
  • implement BOLT-1: do connection to other LN nodes + send/receive `connect`, `ping` & `ping` messages
  • (optionally) implement gossip protocol

Adding your Project

Feel free to add a challenge yourself! The wiki is open to any Bolter (you'll figure out how to edit.) Get in touch on Mattermost for more information and collaboration.