roygbiv.guide: a BOLT12-Prism-native Website

roygbiv.guide: a BOLT12-Prism-native Website

When gigi first wrote his famous post on Lightning Prisms, he listed a few use cases for Prisms. The first example he gave was this:

Screen capture from gigi's post on Lightning Prisms.

That's a neat idea! We figured that with idea of BOLT12-Prisms now implemented, we should apply it to a new form of Value4Value website first. That's what roygbiv.guide is, a new form of Value4Value website backed by BOLT12-Prisms.

Tipping Model

Each main post on roygbiv.guide is assigned a unique BOLT12-Offer with a specific prism bound to it. This means that anyone can tip that offer, and sats will be split among the contributors of the post.

Tip specific posts

That's really nice. Being able to tip specific content allows readers to show appreciation (in form of sats) to the creators directly involved with the creation of that content. In the spirit of Value4Value, each post contains "The Ask", or a short stanza that encourages tips for value provided. We expect that most tipping will target specific content/posts.

Tip the entire website

But there's no need to constrain ourselves to tipping specific content. What if you wanted to tip the entire website and split your precious sats among all contributors among all the posts? Well, that's possible with BOLT12-prisms using local prism composability (discussed below).

Here's a visual of the overall structure:

Or click here to view the original diagram

Of course, if you want to leave money to the authors of a specific post, you can do that! Each post has a button that links to its respective prism offer, so tips go to the authors of the post. But if you just want to leave a big fat tip to the overall ROYGBIV effort, you can simply tip the root prism offer. Any of those contributions are then split among the top-level posts and "trickle down" to contributors of individual posts. In other words, /v4v gets 33%, /demo 33%, and the original ROYGBIV team members at /about 33%.

Local Prism Composability

As you can see from the diagram above, roygbiv.guide makes use of local prism composability–that is, in the root tip prism, member destinations are [Prism] Offers issued by the local Lightning Node. We colloquially refer to this this as Explicit Pay-to-Self Destination (PTSD), a feature enabled by Core Lighting's BOLT12 pay-to-self functionality.

💡
Special thanks to the Core Lightning Team for implementing "self-pay for bolt12". This feature was introduced in v24.08.

As you can imagine, payouts to local prism offers happen immediately and outlays are almost always 0. That's because the local node is online and payouts usually succeed immediately.

This is in contrast to Global Prism Composability, where member destination offers are issued by remote nodes. These destinations are more likely to have larger outlays due to a variety of factors including node availability, lack of liquidity, etc..

BIP-353

Adding BIP353 DNS records makes it easy for users to type in a short name to resolve the BOLT12 Prism Offer so they can tip your prism. BIP353 really is tangential to the BOLT12-Prism functionality, but improves the overall user experience for the website. Each tip button on site includes its BIP353 moniker.

💡
In most cases on the website, we simply have a button that is URI-encoded like this: lightning:lno235238623. This seems to work well with Phoenix wallet which has BOLT12 support. The button text has an associated BIP353 moniker, but encodes the offer directly in the link.

Regardless, here is the structure of the BIP353 records for roygbiv.guide:

Website Path BIP353
/ tip@roygbiv.guide
/about about@roygbiv.guide
/demo demo@roygbiv.guide
/v4v v4v@roygbiv.guide
/blog/post0 post0@blog.roygbiv.guide
/blog/post1 post1@blog.roygbiv.guide

Basically at the root, you can tip tip@roygbiv.guide​​​. Any tips sent to the root of the website are split evenly among the Prism Offers of the main posts, namely /about (for the original founding team), then /demo, and this page, /v4v. Any portion going to those respective prisms are split according to that post's prism policy.

Blog

Blog entries are treated separately from the above workflow. Blog posts have their own dedicated offer to tip, which may or may not be backed by a prism. Typically the post will NOT be backed by a prism when the post has a single author. Posts having multiple offers are typically backed by a prism which may be hosted by any contributor of the post.


Like the format of the BOLT12-Prism Value4Value website? If so, consider tipping the prism below. All contributions are split evenly among the contributors listed below.

farscapian

farscapian

Bitcoiner working on lightning prisms.
Gudnuf

Gudnuf

developing = building + learning
John Gribbin

John Gribbin

Software Dev. Into Bitcoin.
Stephen DeLorme

Stephen DeLorme

Bitcoin UX Designer
Aaron Barnard

Aaron Barnard

Developer working on Clams Remote.