It's really a lot to explain... But if you are here, good job.
Onion Studio is a demonstration of the new TLV format for Lightning Network Sphinx onion routing packets as specified in BOLT 4. This format allows for custom application-specific extensions to be made to the protocol. Onion Studio takes inspiration from Satoshis Place but is a bit more arcane and 1337 with its use of edgy Lightning Network tech.
The C-Lightning node behind the Onion Studio site is enabled to receive TLV data in the form of pixel draw instructions. Likewise, the provided client will encode these pixel draw instructions to send to our node with the payment. On the server side, if correct encoding is found and if sufficient payment has been included as a hop forwarding fee (1 satoshi per pixel), it will draw the pixels on the site and echo them out to connected clients in real-time via websocket.
For now, only C-Lightning allows custom TLV payloads to be provided via the createonion
and sendonion
interface. LND and other clients and wallets currently do not support this use yet.
The only way to draw is to run the provided client code with your C-Lightning v0.8.0+ node. Both a plugin and non-plugin option are provided. Installing the plugin takes a bit of effort, but provides an easier interface. The non-plugin option will require you to specify the path to your JSON-RPC file as a CLI argument. Our README covers this in more detail.