<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>The Interledger Community 🌱: Hop Sauna</title>
    <description>The latest articles on The Interledger Community 🌱 by Hop Sauna (@hopsauna).</description>
    <link>https://community.interledger.org/hopsauna</link>
    <image>
      <url>https://community.interledger.org/images/QoLsyCkSWPs8tyVneybx0NUkPIpg4Fsc8Pb_h1lhsF0/rs:fill:90:90/g:sm/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL29yZ2Fu/aXphdGlvbi9wcm9m/aWxlX2ltYWdlLzIz/Ny9hN2ZjYjczMi05/MWYzLTQzYWUtYWFk/MC0yODRkNDc3NTFl/MTUuanBlZw</url>
      <title>The Interledger Community 🌱: Hop Sauna</title>
      <link>https://community.interledger.org/hopsauna</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://community.interledger.org/feed/hopsauna"/>
    <language>en</language>
    <item>
      <title>Hop Sauna social marketplace framework — ILF Ambassador Final Report</title>
      <dc:creator>Gavin Chait</dc:creator>
      <pubDate>Sat, 24 Jan 2026 08:45:25 +0000</pubDate>
      <link>https://community.interledger.org/hopsauna/hop-sauna-social-marketplace-framework-ilf-ambassador-final-report-35h3</link>
      <guid>https://community.interledger.org/hopsauna/hop-sauna-social-marketplace-framework-ilf-ambassador-final-report-35h3</guid>
      <description>&lt;p&gt;&lt;a href="https://codeberg.org/whythawk/hop-sauna" rel="noopener noreferrer"&gt;&lt;em&gt;Hop Sauna&lt;/em&gt;&lt;/a&gt; is a core technical stack aimed at developers to support implementing a federated, community-moderated web shop offering custom digital objects.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/w_oVSNLUGpJiWvF4q9_qJ6P8K01Vq0j9gXWTbes1p2s/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3cyOXgzeDBs/cnBhMXplMzYzeXln/LmpwZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/w_oVSNLUGpJiWvF4q9_qJ6P8K01Vq0j9gXWTbes1p2s/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3cyOXgzeDBs/cnBhMXplMzYzeXln/LmpwZw" alt="Gavin Chait presenting Hop Sauna at the 2025 Mexico City Interledger Summit" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Update
&lt;/h2&gt;

&lt;p&gt;Those who wish to lead change have a responsibility to demonstrate and build trust with the communities and individuals we hope will support us.&lt;/p&gt;

&lt;p&gt;Our online activity is fraught with &lt;a href="https://community.interledger.org/carolinesinders/by-design-the-hidden-harms-within-banking-apps-ilf-ambassador-final-report-4k29"&gt;dark patterns, described by Caroline Sinders in her Ambassador Report&lt;/a&gt;. For open payments to reach greater acceptance by regulators, buyers and sellers, we have to demonstrate greater ethical responsibility than the alternatives. More than that; we have to be easier to use, easier to understand, and safer for everyone.&lt;/p&gt;

&lt;h3&gt;
  
  
  Supporting African creators
&lt;/h3&gt;

&lt;p&gt;The community I most wish to bring online are African authors on the continent who struggle with financial exclusion.&lt;/p&gt;

&lt;p&gt;Even if you are a well-published, famous African author in the diaspora - a &lt;a href="https://suyidavies.com/" rel="noopener noreferrer"&gt;Suyi Davies&lt;/a&gt;, &lt;a href="https://nnedi.com/" rel="noopener noreferrer"&gt;Nnedi Okorafor&lt;/a&gt;, or &lt;a href="https://us.macmillan.com/author/tadethompson" rel="noopener noreferrer"&gt;Tade Thompson&lt;/a&gt; - that doesn't mean you can reach African readers. And, if you're an African living on the continent, you can give your work away on any of the major platforms - as &lt;a href="https://www.dilmandila.com/" rel="noopener noreferrer"&gt;Dilman Dila&lt;/a&gt; does on YouTube - but you struggle to charge for it.&lt;/p&gt;

&lt;p&gt;And then there are the horror stories. Anyone who has ever self-published on Amazon knows how hard it is to sell even one book. A few years ago &lt;a href="https://odekpeki.com/" rel="noopener noreferrer"&gt;Chovwe Ekpeki&lt;/a&gt;, a Nigerian author, edited an anthology of African scifi which he modestly called The Year's Best African Speculative Fiction. Listed on Amazon's US site, he managed to sell $2,000 of books. Just before he was due to be paid out, Amazon notified him that Nigerians weren't eligible to sell, and they closed his account, and took his - and his contributors - money. This was eventually sorted out, but it left us all with a sense of how tenuous is our relationship with these platforms.&lt;/p&gt;

&lt;p&gt;And so we come to our challenges: we are not able to gain access to readers, we can't get paid by the places we publish, and our readers can't always use the ways they are used to paying - like mobile money - online.&lt;/p&gt;

&lt;h3&gt;
  
  
  Hop Sauna release
&lt;/h3&gt;

&lt;p&gt;I'm struck by just how fundamentally weird the contemporary internet has become. It's got the diversity, curiosity and innovation of a small agricultural town in middle America, or even somewhere in the Northern Cape. In many parts of the world, Facebook is the whole of the internet, just like Amazon is the place you shop. Discovery and purchase happens exclusively in properties controlled by such a small number of companies.&lt;/p&gt;

&lt;p&gt;You can judge how far into the barren wastes of the web you are by how often the site you're visiting pressures you into subscribing to their newsletters and build an account there. They're desperately worried they're about to lose you forever.&lt;/p&gt;

&lt;p&gt;When I started developing Hop Sauna, I wanted to break these walls open to the wild early internet. I want software that encourages connection, is moderated by the creators who sell their work on that site, has some friction to launching new products so that it feels more intentional, and I want payments to be low-cost, and direct between buyer and seller.&lt;/p&gt;

&lt;p&gt;Some of this leans into the growing community of ActivityPub social websites, like Mastodon, but a lot depends on Interledger's success with open payments.&lt;/p&gt;

&lt;p&gt;Consolidating everything I've learned this year is still a work in progress, and this report is a continuation of &lt;a href="https://community.interledger.org/hopsauna/hop-sauna-ilf-ambassador-progress-report-35oa"&gt;my interim report&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Progress on Objectives, Key Activities
&lt;/h2&gt;

&lt;p&gt;If you know your Clausewitz, no plan survives contact with reality, or your Tyson, where everyone has a plan till they get punched in the face, these are my original goals, and how they evolved.&lt;/p&gt;

&lt;h3&gt;
  
  
  Goal 1: deliver a template developer stack ready for custom creation of creator community-moderated Open Payments-enabled web shop
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://codeberg.org/whythawk/hop-sauna/" rel="noopener noreferrer"&gt;Hop Sauna&lt;/a&gt; is available as an initial release. There is a great deal of documentation for developers, and much more to be done. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/aTuwV2z1aG4z7vbJuJtDkNzFhtHzOL1lZo7jM3Hn4MY/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL25nZmphc2kw/b3lvYmM1eHBscmN3/LnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/aTuwV2z1aG4z7vbJuJtDkNzFhtHzOL1lZo7jM3Hn4MY/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL25nZmphc2kw/b3lvYmM1eHBscmN3/LnBuZw" alt="Demonstration of open payments workflow on Hop Sauna" width="727" height="730"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This went more or less as expected, although the steepness of the learning curve, and the challenges of working with relatively immature software, did cause delays as I grappled with getting everything into my head.&lt;/p&gt;

&lt;h3&gt;
  
  
  Goal 2: develop marketplace tools for facilitating buyer and seller exchanges, including for webhooks for responding to successful purchases, disputes and refunds
&lt;/h3&gt;

&lt;p&gt;Here I was limited by the provisional state of the &lt;a href="https://github.com/interledger/open-payments-python-sdk/tree/main" rel="noopener noreferrer"&gt;Python Open Payments Developer Kit&lt;/a&gt;. Over the course of my project, I refactored and redeveloped the kit, with the following updates:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Model refactoring and fixes&lt;/strong&gt;: generated code resulted in models that don't return data, or duplications and deeply-nested &lt;code&gt;RootModels&lt;/code&gt; much of which could be deleted and simplified.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;New convenience functions&lt;/strong&gt;: testing the API effectively requires building a full purchase workflow, but such a workflow is also useful to developers using the SDK. The &lt;code&gt;README&lt;/code&gt; in the &lt;code&gt;process&lt;/code&gt; folder details the main objectives and roadmap, and this update implements the simplest possible payments workflow for purchase and sale.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Updated tests&lt;/strong&gt;: all the tests should be refactored, especially as private endpoints have been committed to the repo. Tests for the convenience functions run through a complete workflow, and use the new environment variables to safely do a real-world test on the Rafiki test server.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There is currently a &lt;a href="https://github.com/interledger/open-payments-python-sdk/pull/12" rel="noopener noreferrer"&gt;pull request&lt;/a&gt; awaiting review.&lt;/p&gt;

&lt;p&gt;Further development on the open payments aspect of Hop Sauna awaits on approval of this pull request.&lt;/p&gt;

&lt;h3&gt;
  
  
  Goal 3: kick-start cooperative creator marketplaces through engaging with stakeholders to align the template stack with their needs, and to develop a supportive environment for project sustainability
&lt;/h3&gt;

&lt;p&gt;Early in 2025, I convened a group of African SFF authors from around the world to discuss how best to serve their needs. The group includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://cherylsntumy.wordpress.com/" rel="noopener noreferrer"&gt;Cheryl Ntumy&lt;/a&gt;: Ghana-based SFF author and founding member of Petlo Literary Arts, a non-profit that develops and promotes creative writing from Botswana. She is also a founding member of the Sauútiverse Collective, an African speculative fiction collaborative worldbuilding project.
&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://www.dilmandila.com/" rel="noopener noreferrer"&gt;Dilman Dila&lt;/a&gt;: Ugandan writer, film maker and a social activist. His books include Where Rivers Go To Die, which was shortlisted for the PKD Awards (2024), his films include, “What Happened in Room 13”, has been watched more than 8 million times online. He is currently working on his third feature film, about decentralized governance.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://ivorhartmann.blogspot.com/" rel="noopener noreferrer"&gt;Ivor Hartmann&lt;/a&gt;: Zimbabwean writer, editor, publisher, and visual artist. Awarded The Golden Baobab Prize (2009), finalist for the Yvonne Vera Award (2011), selected for The 20 in Twenty: The Best Short Stories of South Africa’s Democracy (2014), awarded third in the Jalada Prize for Literature (2015), and Nommo Awards nomination (2017). He also runs the StoryTime micro-press, publisher of the African Roar and AfroSF series of anthologies, and most recently ZamaShort.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://africa-alliance.org/ayodele-arigbabu" rel="noopener noreferrer"&gt;Ayodele Arigbabu&lt;/a&gt;: is a writer, architect and creative technologist with close to two decades of experience in delivering projects at the intersection of architecture, design, film, digital media, publishing, event production and curation, as well as in the development of digital and interactive arts and applications. His short story "You Live to Die Once" won the 2001 Liberty Bank Short Stories Prize; his poem "Livelihood" got an honourable mention at the 2003 Muson Poetry competition. His stage play Moremi: The Legend Retold was staged in December 2003 at the University of Lagos Main Auditorium to an appreciative audience, and went on to be performed in Oklahoma and at the National Theatre of Nigeria.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://suyidavies.com/" rel="noopener noreferrer"&gt;Suyi Davies Okungbowa&lt;/a&gt;: award-winning author of fantasy, science fiction and general speculative fiction. He has published various novels for adults, the latest of which is Son of the Storm (Orbit, 2021, first in the epic fantasy trilogy), The Nameless Republic (the second book in the series, Warrior of the Wind, 2023). His debut novel, David Mogo, Godhunter (Abaddon, 2019) won the 2020 Nommo Award for Best Speculative Novel.&lt;/li&gt;
&lt;li&gt;
&lt;a href="https://judeumeh.wordpress.com/" rel="noopener noreferrer"&gt;Jude Umeh&lt;/a&gt;: published author and thought leader on the intersection of emerging technology and Intellectual Property on Digital Content and Rights, Umeh currently works as a Director of AI Business Strategy with Salesforce Professional Services.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Much of what follows is influenced by the guidance of this group. Many of them expressed reservations that they could understand or contribute to the tech, but I pointed out that it's not their job to understand the tech. It's my job to understand their needs and then reflect that back to them using the tech.&lt;/p&gt;

&lt;h2&gt;
  
  
  What impact does the project have on your perception of digital financial inclusion?
&lt;/h2&gt;

&lt;p&gt;I feel more encouraged after this past year than I was at its outset. I have entered my Ambassadorship with a "show, don't tell" strategy, preferring to build and demonstrate what I'm doing than to simply talk about it. The more I engage, listen and learn, the more viable my approach for federated, collaborative social marketplaces feels.&lt;/p&gt;

&lt;p&gt;Certainly, there is a long way to go, but the solutions offered need to be better than what exists, not be perfect on the first attempt.&lt;/p&gt;

&lt;p&gt;A lot rests on the success of the open-payments enabled payments providers and wallets, and these are still in a very early stage. However, if we don't also have the ability to rapidly implement webshops using open payments, then that time and investment will remain unfulfilled.&lt;/p&gt;

&lt;p&gt;Until then, the best hope for the future is to keep building.&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Impact &amp;amp; Target Audience(s)
&lt;/h2&gt;

&lt;p&gt;There is something in innovation I call the Milk Problem.&lt;/p&gt;

&lt;p&gt;Everyone knows what milk is. If I bring you a new type of milk, I don't need to explain what it is, just tell you how it is different from other milk and why you should buy it.&lt;/p&gt;

&lt;p&gt;Push your innovation further out, and you end up in a place where no-one knows what it is you're offering them. You first have to explain everything about that thing before you can get around to the product itself and why people should buy it.&lt;/p&gt;

&lt;p&gt;Hop Sauna is not "milk". It is a framework for a new type of federated social commerce which doesn't exist formally as generally-available software. Sure, it builds on social publishing and leans on existing commercial models, but it is complex to explain quickly. People don't necessarily have a mental model for it.&lt;/p&gt;

&lt;p&gt;My author's group discussed ways in which they want to be paid and I then structured this into a set of archetypes:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;One-off&lt;/strong&gt;: a payment - usually of purchase and sale - between a buyer and seller which happens once.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Recurring&lt;/strong&gt;: a payment - usually a subscription, or structured fee - between a buyer and seller.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Conditional&lt;/strong&gt;: a payment which is conditional on some additional factor - e.g. the seller is required to perform some task, or a threshold of purchases are required - before funds are transferred.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;This covers everything from an Amazon purchase, to Spotify streaming subscriptions, to Kickstarter campaigns or even an Uber taxi trip.&lt;/p&gt;

&lt;p&gt;There are a myriad of these types of requirements. Each of them needed to be documented, understood, mapped to methods in Open Payments or ActivityPub, and then represented in ways that can be understood by developers, and potential buyers and sellers using that software.&lt;/p&gt;

&lt;p&gt;The challenge is many developers have little experience of the challenges of the financially excluded, and the financially excluded don't often get a voice in the technical solutions developed on their behalf.&lt;/p&gt;

&lt;p&gt;Hop Sauna needs to integrate this dynamic by default without causing anyone to realise they have no idea what milk is.&lt;/p&gt;

&lt;p&gt;I think I'm getting there. &lt;/p&gt;

&lt;h2&gt;
  
  
  Communications and Marketing
&lt;/h2&gt;

&lt;h3&gt;
  
  
  2025 Interledger Summit Mexico City
&lt;/h3&gt;

&lt;p&gt;I presented the first release of Hop Sauna at the 2025 Interledger Summit in Mexico City, as well as charting out where we are, and the sorts of apps I'd like to see arising from my work:&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/lt6rJpJ7a94?start=3126"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;As examples, consider cooperative versions of Uber, where groups of drivers regulate and manage themselves, and have a direct relationship with their passengers:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/ea8EZBWF7aXhOBhdNsTAsJyzj_EjpmBvg_vcZXj50Gk/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL2t2b2ZidnVx/cmJ4MWpieGp5bG5l/LnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/ea8EZBWF7aXhOBhdNsTAsJyzj_EjpmBvg_vcZXj50Gk/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL2t2b2ZidnVx/cmJ4MWpieGp5bG5l/LnBuZw" alt="Uber alternative" width="421" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Or a Booking.com alternative, where guesthouses and hotels don't have to pay intermediaries to handle their bookings for them:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/WdP4S_Zk7vty47HVJLuDVnVpoB3_fd9wC_HqXDMTJnU/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL2s4aXhjMG1w/eHNhOGxwbm51a2Zm/LnBuZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/WdP4S_Zk7vty47HVJLuDVnVpoB3_fd9wC_HqXDMTJnU/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL2s4aXhjMG1w/eHNhOGxwbm51a2Zm/LnBuZw" alt="Booking.com alternative" width="421" height="421"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  2025 Interledger Hackathon Mexico City
&lt;/h3&gt;

&lt;p&gt;I was a mentor at the hackathon, during which teams attempted to build new applications for open payments. This gave me first-hand experience of the types of challenges developers face when using open payment development kits, and also to gauge interest in more enhanced features for the toolkits.&lt;/p&gt;

&lt;p&gt;I also had the rare pleasure of having two teams adopt Hop Sauna during the event and deliver completed submissions using it.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/w6qOcib1SETsVPi1iPuSJfsvNyRa2PdAY_CRT6xfz1Q/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL2lyMm5pZmNu/emZzdHB2NXF5OWFy/LkpQRw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/w6qOcib1SETsVPi1iPuSJfsvNyRa2PdAY_CRT6xfz1Q/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL2lyMm5pZmNu/emZzdHB2NXF5OWFy/LkpQRw" alt="6am, an hour before deadline, a team successfully completes their app using Hop Sauna" width="800" height="451"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Podcast
&lt;/h3&gt;

&lt;p&gt;Cheryl, Dilman, &lt;a href="https://www.jeremiahlee.com/" rel="noopener noreferrer"&gt;Jeremiah Lee from the Foundation&lt;/a&gt;, and I collaborated on a &lt;a href="https://podcast.interledger.org/@InterledgerSalon/episodes/unlocking-possibilities-the-role-of-open-payments-in-african-speculative-fiction" rel="noopener noreferrer"&gt;podcast, published in December last year&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This covers much of the ground we considered during my Ambassadorship, ranging from the cascade of transactions necessary to get money from publishers in the US into the hands of authors, to platform exclusion, to the multiple ways we need to borrow identities from others with more privilege just to get things done.&lt;/p&gt;

&lt;p&gt;I have also begun engaging with some of the key developers and infrastructure designers of the fediverse to ensure that Hop Sauna plays well with others.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/A6gcEQawtgBzYT9IAi4P11oOjI3XKzsjy9EhnJorUWg/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3RoanNxajRv/ODZkN3ZjNTlkM3My/LmpwZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/A6gcEQawtgBzYT9IAi4P11oOjI3XKzsjy9EhnJorUWg/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3RoanNxajRv/ODZkN3ZjNTlkM3My/LmpwZw" alt="Hop Sauna plays well with others, presented by Gavin at the Interledger Summit" width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Hop Sauna extension
&lt;/h3&gt;

&lt;p&gt;There is an initial set of moderation hooks, and I will be focusing on extending this in Q1 2026.&lt;/p&gt;

&lt;p&gt;My working plan so far is to implement the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Site level:

&lt;ul&gt;
&lt;li&gt;Universal block lists&lt;/li&gt;
&lt;li&gt;Geotargeting - fairly blunt, but using IP addresses to isolate "bad places"&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;li&gt;Actor level:

&lt;ul&gt;
&lt;li&gt;Individual blocks/mutes at site and actor level&lt;/li&gt;
&lt;li&gt;No reply except for direct messages, and limit direct messages by default to followers only (they can open this, if they wish)&lt;/li&gt;
&lt;li&gt;Detachable reposts for the inevitable shark-baiting. Given many stacks aren't yet implementing this. I figure it works more like a mute.&lt;/li&gt;
&lt;li&gt;Geotargeting of individual actors with options to block, show different information, or offer a different price. This works on multiple levels from the way I was originally thinking of it (offering books for sale only in certain countries) to the limitation of products which may be illegal outside of certain jurisdictions.&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;

&lt;p&gt;This mostly reduces clutter and problems on the commercial server, but a repost on another server probably supports replies there. Again, a functional mute on main.&lt;/p&gt;

&lt;p&gt;The more specific commercial limits will be:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://en.wikipedia.org/wiki/Dunbar's_number" rel="noopener noreferrer"&gt;Dunbar's limit&lt;/a&gt; of 150 creators (any number of supporters, depending on the type of service - on my Kindle-alt, readers have accounts to store and read their books).&lt;/li&gt;
&lt;li&gt;All Actor Services (products) can only be made public by an approved editor with those rights.&lt;/li&gt;
&lt;li&gt;Messages are all generated, meaning you can only send a message to your followers when a specific type of action occurs (publishing a book, offering a period-limited discount, that sort of thing).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of that stops individuals reposting their product announcements on their other socials, but there they would be limited by the rules of those communities.&lt;/p&gt;

&lt;p&gt;The Dunbar's limit includes an extension - the stack name cannot be a creator server. As example, the Kindle-alt will be called Qwyre (rebuilding my existing &lt;a href="https://qwyre.com" rel="noopener noreferrer"&gt;https://qwyre.com&lt;/a&gt; which stopped working commercially when Coil was closed, but still works perfectly well as my main ereader). Qwyre itself will be closer to something like JoinMastodon, and eventually become a federated search engine for books from all the different imprints (servers).&lt;/p&gt;

&lt;p&gt;I think it's critical to ensure distribution and discovery to prevent agglomeration effects that overwhelm safe communities.&lt;/p&gt;

&lt;h3&gt;
  
  
  Qwyre for self-publishing
&lt;/h3&gt;

&lt;p&gt;I have a new novel. My intention is to dust off the old &lt;a href="https://qwyre.com" rel="noopener noreferrer"&gt;Qwyre&lt;/a&gt; and build a new Kindle-alternative where I can collaboratively publish my work.&lt;/p&gt;

&lt;h2&gt;
  
  
  Community Support
&lt;/h2&gt;

&lt;p&gt;I would appreciate the following:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Code review&lt;/li&gt;
&lt;li&gt;Feature development&lt;/li&gt;
&lt;li&gt;Internationalisation&lt;/li&gt;
&lt;li&gt;UX / UI&lt;/li&gt;
&lt;li&gt;Unicorn Hunters&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This latter is aimed at developers who want to build on Hop Sauna with apps targeting existing monopoly commercial tech, like Amazon, Kickstarter, Uber, etc.&lt;/p&gt;

&lt;p&gt;Oh, and funding. I'm always looking for funding to support continued development.&lt;/p&gt;

&lt;p&gt;I wish to thank Interledger for their support, and look forward to everyone's thoughts on progress to date.&lt;/p&gt;

</description>
      <category>progressreport</category>
      <category>ilfambassadorfinalreport</category>
    </item>
    <item>
      <title>Hop Sauna — ILF Ambassador Progress Report</title>
      <dc:creator>Gavin Chait</dc:creator>
      <pubDate>Wed, 16 Jul 2025 17:35:54 +0000</pubDate>
      <link>https://community.interledger.org/hopsauna/hop-sauna-ilf-ambassador-progress-report-35oa</link>
      <guid>https://community.interledger.org/hopsauna/hop-sauna-ilf-ambassador-progress-report-35oa</guid>
      <description>&lt;p&gt;&lt;a href="https://codeberg.org/whythawk/hop-sauna" rel="noopener noreferrer"&gt;&lt;em&gt;Hop Sauna&lt;/em&gt;&lt;/a&gt; is a core technical stack aimed at developers to support implementing a federated, community-moderated web shop offering custom digital objects.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/yXKyT-KBCyYSswvTa9jsPgs2xdnxitORURExz6WvIsw/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3Rta3F3OTVi/dzdxbzdkcG01b21y/LmpwZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/yXKyT-KBCyYSswvTa9jsPgs2xdnxitORURExz6WvIsw/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3Rta3F3OTVi/dzdxbzdkcG01b21y/LmpwZw" alt="Sample landing Hop Sauna landing page featuring generated creator profiles" width="800" height="765"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Update
&lt;/h2&gt;

&lt;p&gt;Any system permitting commercial exchange exists at the intersection of what is technically possible, ethically responsible, and permissible under the patchwork of international regulatory compliance.&lt;/p&gt;

&lt;p&gt;Building a commercial website is relatively straightforward. Frameworks - like Django or Drupal - exist. You can integrate Stripe or PayPal quite quickly. But, once you're done, such a site offers little advantage over listing your products on Amazon or eBay, with the huge downside of being functionally invisible to the larger world. If you're already famous, moving to your own infrastructure may have advantages, but if you're less known, or just starting out?&lt;/p&gt;

&lt;p&gt;But, what happens if you live in a part of the world not supported by these platforms, or are just tired of the ethical and business practices of the platforms?&lt;/p&gt;

&lt;p&gt;A functional, community-oriented commercial platform would have the following characteristics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A community of peers, selling similar or compatible works, where membership is a function of acceptance by that community,&lt;/li&gt;
&lt;li&gt;Review of business behaviour (or moderation of activity) is by the community, ensuring that members are held to agreed norms,&lt;/li&gt;
&lt;li&gt;Costs are kept to the minimum with members paying for shared infrastructure, but otherwise keeping their own revenue, or contributing in some agreed way to their community.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Each community would also interoperate with other communities which offer similar works and where their community standards are compatible. This interoperability ensures collective discovery, much like the &lt;a href="https://en.wikipedia.org/wiki/Webring" rel="noopener noreferrer"&gt;webrings&lt;/a&gt; of the early internet when search was still in its infancy. Discovering one link in the network provides access to a wider world.&lt;/p&gt;

&lt;p&gt;A single website can be structured however the developer chooses, but the moment information needs to be exchanged between sites - federated - interoperability standards become critical. It would also be helpful if that standard already supported interactions between millions of people.&lt;/p&gt;

&lt;p&gt;Or, to summarise, it would be nice to go where the tea is already being made.&lt;/p&gt;

&lt;p&gt;And these then are the objectives of my project.&lt;/p&gt;

&lt;p&gt;Building a website based on intrinsic interoperability means that one is never building in isolation. Federation requires a set of standardised methods for services sharing the same protocol to query and interpret data from each other.  &lt;a href="https://www.w3.org/TR/activitypub/" rel="noopener noreferrer"&gt;ActivityPub&lt;/a&gt; and &lt;a href="https://www.w3.org/TR/activitystreams-core/" rel="noopener noreferrer"&gt;ActivityStreams&lt;/a&gt; provide the protocols we need, but these exist side-by-side with the ordinary protocols of the site itself.&lt;/p&gt;

&lt;p&gt;To contextualise this, think of email. Where email fails is that there is no way to moderate who gets to email you. So you get spam. ActivityPub enforces &lt;em&gt;authenticated fetch&lt;/em&gt;, meaning people have to prove who they are before they can send you a message. That process of being able to send authenticated messages between authenticated actors (people) can be used for anything, and the first use-case is social media (think &lt;a href="https://joinmastodon.org/" rel="noopener noreferrer"&gt;Mastodon&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;The main challenge for anyone building from scratch is that, while the protocols themselves are &lt;a href="https://github.com/boyter/activitypub/blob/main/announce-post.md" rel="noopener noreferrer"&gt;well-documented&lt;/a&gt;, you need test servers to send messages to so that you can see if your software is capable of two-way communication. Fortunately, &lt;a href="https://activitypub.academy/" rel="noopener noreferrer"&gt;ActivityPub.Academy&lt;/a&gt; by &lt;a href="https://mastodon.social/@crepels" rel="noopener noreferrer"&gt;Sebastian Jambor&lt;/a&gt; exists. But a lot of stuff isn't clear, and ActivityPub itself is like a Matryoshka doll of nested metadata which needs to be tested before it can be used.&lt;/p&gt;

&lt;p&gt;An image can be listed as a URI reference, or as a data structure where the link can be named "url" or "href". And then there's the undocumented best-practices, like how exactly should you implement authenticated fetch safely?&lt;/p&gt;

&lt;p&gt;Say you have a person on your website who has chosen to be unlisted and protect their privacy. You get a request from an external website to interact with this person. Authenticated fetch requires a named "actor" to send back a query to the sending website, allowing each website to authenticate the other. Site &lt;em&gt;Albert&lt;/em&gt; sends a message from &lt;em&gt;Bradley&lt;/em&gt; to your website &lt;em&gt;Clarice&lt;/em&gt; to the person &lt;em&gt;Dominique&lt;/em&gt;. Which identity should respond to &lt;em&gt;Bradley&lt;/em&gt;? If this is a wild spam message designed to check if such an identity exists prior to attempting some scam, sending a message back from &lt;em&gt;Clarice&lt;/em&gt; would confirm that their identity exists without yet confirming who &lt;em&gt;Bradley&lt;/em&gt; is, or if they are who they say they are, or whether &lt;em&gt;Dominique&lt;/em&gt; even wants to talk to them.&lt;/p&gt;

&lt;p&gt;In Amazon or Facebook, if you want to send a message to another person on the same site, you both have to be logged in. It's a relatively straightforward problem.&lt;/p&gt;

&lt;p&gt;With ActivityPub, an undocumented solution is to create a universal site actor which acts as an agent for all identities on this initial approach. Once &lt;em&gt;Bradley&lt;/em&gt; is verified, and you can then test if &lt;em&gt;Dominique&lt;/em&gt; is open to contact from &lt;em&gt;Bradley&lt;/em&gt;, only then do you permit &lt;em&gt;Dominique's&lt;/em&gt; identity to be exposed to this external identity.&lt;/p&gt;

&lt;p&gt;And so it goes.&lt;/p&gt;

&lt;p&gt;Each interaction requires solving two sets of problems:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How do you get this code to do what it is supposed to do? Not a trivial problem.&lt;/li&gt;
&lt;li&gt;How do I design this so that my community members are kept safe, and are able to keep themselves safe? Even more challenging in the absence of mature systems.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I have also implemented multi-language support - both statically in the app, and dynamically in text provided by creators and admins (i.e. you could directly serve different translations via the same posts) - from the beginning.&lt;/p&gt;

&lt;p&gt;This is very slow going. &lt;/p&gt;

&lt;p&gt;However, when you get it right, you suddenly get a whole bunch of things working at once.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/69Z8EfjKW7ArHTKIMU4XnZQHGJuANPltCmBo7qJ9UW8/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzLzEwaDJ0b28y/dHZzcWo0Ynp1d3U0/LmpwZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/69Z8EfjKW7ArHTKIMU4XnZQHGJuANPltCmBo7qJ9UW8/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzLzEwaDJ0b28y/dHZzcWo0Ynp1d3U0/LmpwZw" alt="My profile info from Wandering.shop displayed on Hop Sauna" width="800" height="514"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This image displays &lt;a href="https://wandering.shop/@GavinChait" rel="noopener noreferrer"&gt;my Wandering.shop profile&lt;/a&gt; on the Hop Sauna build. To get what may seem intrinsically simple running requires everything else - authenticated fetch, appropriate &lt;em&gt;webfinger&lt;/em&gt; endpoints - to be working.&lt;/p&gt;

&lt;p&gt;Hopefully this demonstrates the value of these protocols to a community-based webshop - you can know your customer, moderate who gets to be a customer, and maintain relationships with your customers.&lt;/p&gt;

&lt;p&gt;And so, my update is that progress is happening, but in bursts. Along the way I have also kept an eye on the &lt;a href="https://github.com/interledger/open-payments-python-sdk" rel="noopener noreferrer"&gt;Python Open Payments SDK&lt;/a&gt; which I will need as I head deeper into implementing web monetization and payments. Now, payments themselves are a complex set of products. Simple purchases are complemented with subscriptions, milestone-based fundraising, and other variations. Some are artifacts of the way credit cards work and aren't directly transferable to open payments.&lt;/p&gt;

&lt;p&gt;I have convened a small group of African authors to discuss the requirements they have from a federated platform, and many of the initial suggestions raise additional questions. Take implementing a Kickstarter-style fundraiser. Credit cards allow for deferred payments, a mechanism largely developed because the high cost of transactions means that reversing a charge creates such a cascade of fees that it makes the whole thing impossible. Instead, a vendor can put a "hold" on a promise to pay, and then keep that until some criteria are met (or not) then either release the hold, or execute the transaction.&lt;/p&gt;

&lt;p&gt;Open payments has no such method, because it doesn't need it. But, without a hold, how do you run a criteria-based fundraiser? Well, you need an escrow service. Some third-party which will hold the funds until such time as the criteria are met, or not, and then release or return the funds. And now we've crossed from a technical software problem to a regulatory one.&lt;/p&gt;

&lt;p&gt;An &lt;a href="https://en.wikipedia.org/wiki/Affordance" rel="noopener noreferrer"&gt;affordance&lt;/a&gt; is a set of possible actions which arise from the design of a thing. You may wish people to use the thing you made in specific ways, but if your design also permits other ways of acting then you can be sure those ways will be tested. And, unfortunately, affordances that permit bad behaviours impose an external cost on our communities. These &lt;a href="https://en.wikipedia.org/wiki/Externality" rel="noopener noreferrer"&gt;externalities&lt;/a&gt; - like spam from email, or racist autonomous language models - arise naturally because of design decisions that, while technically clever, didn't take into account ethical and regulatory responsibilities.&lt;/p&gt;

&lt;p&gt;Which is a longish way of saying that the creator group is raising requirements that require an ethical and technical assessment, and why Kickstarter-style fundraising will not be supported in the first software release until such time as there are mature escrow services to support the function.&lt;/p&gt;

&lt;h2&gt;
  
  
  Progress on Objectives, Key Activities
&lt;/h2&gt;

&lt;p&gt;The key goals are time-sequenced.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Goal 1&lt;/strong&gt;: deliver a template developer stack ready for custom creation of creator community-moderated Open Payments-enabled web shops.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Goal 2&lt;/strong&gt;: develop marketplace tools for facilitating buyer and seller exchanges, including for webhooks for responding to successful purchases, disputes and refunds.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Goal 3&lt;/strong&gt;: kick-start cooperative creator marketplaces through engaging with stakeholders to align the template stack with their needs, and to develop a supportive environment for project sustainability.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Goal 1&lt;/strong&gt; is about 80% complete. This has taken quite a lot longer than I initially hoped largely owing to limited documentation. I spent a &lt;em&gt;lot&lt;/em&gt; of time reading through other people's implementations in programming languages that are quite foreign to me (or - given coding is deeply personal - using approaches in languages I'm familiar with that are as foreign). &lt;a href="https://codeberg.org/superseriousbusiness/gotosocial" rel="noopener noreferrer"&gt;GoToSocial&lt;/a&gt; is a tremendous project, written in Go, that I have trawled through for database structure and various solutions. The &lt;a href="https://codeberg.org/bovine" rel="noopener noreferrer"&gt;Bovine&lt;/a&gt; project is also key to my work, with a lot of undocumented features necessitating constant review of the code.&lt;/p&gt;

&lt;p&gt;Along the way, I had to "solve" quite a few seemingly non-standardised decisions. Take hashtags, now in common use for theme discovery. Very few implementations support UTF8, meaning that Japanese or Arabic hashtags aren't universally supported. I support this, but I balked at supporting emoji-based hashtags.&lt;/p&gt;

&lt;p&gt;What remains to be done is moderation. However, everything in ActivityPub is a message which then gets acted upon depending on the type of message it is. Moderation requests and responses are types of messages that have an impact on how the targeted identity gets to behave (banned, muted, time-outs), and deciding on what is appropriate, and what flexibility of action to permit site administrators, is itself a set of affordances with its own considerations of externalities.&lt;/p&gt;

&lt;p&gt;There is also a newly-proposed &lt;a href="https://www.fediscovery.org/" rel="noopener noreferrer"&gt;fedidiscovery&lt;/a&gt; standard which is intended to support general search and discovery across federated websites. I will need to explore this with a view to ensuring support. The current standard envisages centralised "hubs" which act to harvest data from sites which opt in, and against which other services can then run queries in an optimised way. This would require an additional "hop sauna search" instance and is currently out of scope.&lt;/p&gt;

&lt;p&gt;I am due to begin &lt;strong&gt;Goal 2&lt;/strong&gt; development this month, and have been talking through the availability of APIs and methods for implementation with the kind help of Uchi Uchibeke at &lt;a href="https://chimoney.io/" rel="noopener noreferrer"&gt;Chimoney&lt;/a&gt;. There are currently only a small number of financial services supporting open payments, although more will be joining as Interledger-supported projects launch. As I get deeper into this objective, I'll build a list and try assess their level of maturity to include in the developer documentation.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Goal 3&lt;/strong&gt; is to keep the deliverable "honest". I have invited a small group of African speculative fiction authors to discuss what a self-publishing "imprint" would require to support creators. It's far too easy to deliver software which solves problems but in ways that are impenetrable for non-technical people to use. When the software can be easily understood and used by this group, then I will know it can do the job. However, their requirements also raise areas where - even with the best of intentions - open payments financial accessibility will fall short. This has surfaced a needed output for the project where I map existing types of creator financial services (auctions, markets, conditional fundraisers, etc) into open payments equivalents, highlighting where services may not yet support implementation. This group will continue discussions till the end of the project with a potential workshop still to be organised at the end.&lt;/p&gt;

&lt;h2&gt;
  
  
  What impact does the project have on your perception of digital financial inclusion?
&lt;/h2&gt;

&lt;p&gt;&lt;em&gt;Hop Sauna&lt;/em&gt; is not intended to reveal or explore problems of financial inclusion, but to build a developer toolkit to support inclusion. With that caveat, exploring implementation does reveal what is still lacking. At this stage, open payments can handle the core transactional requirements of a webshop - one-off payments and subscriptions - but will require intermediaries to support criteria-based fundraising.&lt;/p&gt;

&lt;p&gt;There are also interoperability requirements that can limit cross-border payments (or, increase the costs) even with open payments. The &lt;a href="https://papss.com/" rel="noopener noreferrer"&gt;Pan-African Payment and Settlement System (PAPSS)&lt;/a&gt; is a pan-African initiative which appears equivalent to the EU open-banking approach that has massively reduced costs and complexity for doing banking across Europe. But ... it is fairly new and a long way from full implementation.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Hop Sauna&lt;/em&gt; will be released into what is still an immature implementation environment. While mindful of extending inclusion, I also need to ensure that it supports what absolutely will work right now, rather than what might be available in future.&lt;/p&gt;

&lt;p&gt;Plus, there are the affordances of open payments which remain as-yet unexplored. Once you can make microscopic, rapid peer-to-peer payments, what types of services or opportunities may yet emerge? Something for our creator group to consider...&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Impact &amp;amp; Target Audience(s)
&lt;/h2&gt;

&lt;p&gt;There's an awesome patisserie near where I live. They serve incredibly creative confectionaries; each a flavour journey. And it's all vegan.&lt;/p&gt;

&lt;p&gt;This isn't something you'd know unless you went looking to find out. The objective of the people behind this delight is show not tell. I'm the exact type of person they're targeting ... someone who would never consider vegan by default, but am perfectly happy to be educated if it comes in an accessible way.&lt;/p&gt;

&lt;p&gt;Until there is widespread adoption of open payments in commercial interactions, the opportunity to impact financially-excluded communities will remain notional. Or, until the tea is made &lt;em&gt;where excluded communities are&lt;/em&gt; we're not succeeding. &lt;em&gt;Hop Sauna&lt;/em&gt; is not a destination along that path, but a key enabler to ensure it is easier for developers to create accessible products which happens to support using open payments by default. My objective isn't to tell developers that open payments makes markets more accessible, but to build a compelling suite of tools that speeds up their development process and supports widespread adoption without open payments being experienced as anything other than a straightforward payments implementation.&lt;/p&gt;

&lt;p&gt;Importantly, this is a moving target. &lt;a href="https://mastodon.social/@pixelfed/114817157970310394" rel="noopener noreferrer"&gt;PixelFed&lt;/a&gt;, the federated photo-sharing app, has announced an intention to develop micropayments support using Web Monetization. This is likely to be the first major, and mainstream, implementation that will hit the fediverse. That massively raises the exposure of open payments, while also surfacing any potential community concerns which I can account for (or try to mitigate) as I develop.&lt;/p&gt;

&lt;p&gt;The impact of what &lt;em&gt;Hop Sauna&lt;/em&gt; does, and what I achieve through this ambassadorship, will take time and I expect to be held to these objectives over the long-term.&lt;/p&gt;

&lt;h2&gt;
  
  
  Communications and Marketing
&lt;/h2&gt;

&lt;p&gt;So far, I've kept this very quiet. Sausage-making is not an attractive process, and technical development is not much of a spectator sport. I have written on some &lt;a href="https://community.interledger.org/hopsauna/the-battle-between-the-commute-and-the-community-or-the-strangeness-of-online-monopolies-2olf"&gt;initial development considerations&lt;/a&gt; and - once I release the first &lt;em&gt;Hop Sauna&lt;/em&gt; ActivityPub build - I'll start writing more frequently on what I'm doing.&lt;/p&gt;

&lt;p&gt;This will initially be with developers and then, as I get deeper into developing commercial products, with creators and creator communities.&lt;/p&gt;

&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;From this month, &lt;strong&gt;Goal 2&lt;/strong&gt; takes priority till the end of the project, with implementation of open payments and the various mechanisms to create products and methods for payments. A creator should be able to create a product, then associate regional / currency and price data to their product. The software needs to handle refunds, complaints and time-bound price discounts.&lt;/p&gt;

&lt;p&gt;I will also - once the demo version is near completion - facilitate a workshop with the authors collaborating with me on the needs assessment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Community Support
&lt;/h2&gt;

&lt;p&gt;I would appreciate technical code reviews on the template stack (Python/FastAPI and TypeScript/NuxtJS), as well as help with the Open Payments SDK. Also, non-technical, looking for members of cooperatives or creative communities working collaboratively on creative commercial activities, discussing their needs so I can ensure that the template has them covered.&lt;/p&gt;

&lt;p&gt;Also, if anyone reading specialises in developing user interfaces at the intersection of commerce and social media and has ideas, as well as experience with Nuxt/Tailwind, please get in contact. I may have some budget to pay for your time to help sort out the frontend interface.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/kQrnX6ct66A5Vi59x4S5RemEl4hALfCHn8KkRg62fwQ/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzLzQ4MnZ5bTBk/cWVzM2IxYTJhZHBt/LmpwZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/kQrnX6ct66A5Vi59x4S5RemEl4hALfCHn8KkRg62fwQ/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzLzQ4MnZ5bTBk/cWVzM2IxYTJhZHBt/LmpwZw" alt="Generated creator profile on Hop Sauna build" width="800" height="527"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>progressreport</category>
      <category>ilfambassadorreport</category>
    </item>
    <item>
      <title>The battle between the Commute and the Community, or the strangeness of online monopolies</title>
      <dc:creator>Gavin Chait</dc:creator>
      <pubDate>Sat, 24 May 2025 09:46:23 +0000</pubDate>
      <link>https://community.interledger.org/hopsauna/the-battle-between-the-commute-and-the-community-or-the-strangeness-of-online-monopolies-2olf</link>
      <guid>https://community.interledger.org/hopsauna/the-battle-between-the-commute-and-the-community-or-the-strangeness-of-online-monopolies-2olf</guid>
      <description>&lt;p&gt;If the town where you live was more like the internet, there would be one large department store where hundreds of vendors, all selling more-or-less the same things, would all be yelling at once while waving long lists of customer ratings to persuade you to buy from them. When you go through to pay, the department store - whose employees you never see - would extract anywhere between 30% to 70% of the price as their cut before passing the rest onto the vendor.&lt;/p&gt;

&lt;p&gt;There would be no charismatic little streets with cafes spilling onto the pavement, or the bustle of people chatting, laughing and living. Instead, what you'd have is commerce stripped to its essence, "red in tooth and claw".&lt;/p&gt;

&lt;p&gt;The challenge for any community recovering from this centralisation is how difficult it is change behaviours when there is no - seeming - compelling reason to do so. Unless something dramatic happens.&lt;/p&gt;

&lt;p&gt;In 2020, with COVID, many of us got to experience that change. Amidst the pain, we also experienced a liberation of community. Restaurants spilling onto pavements. Shopping close to home. Living in community. And we liked it. Since then our battle between the Commute and the Community has become polarising and heated.&lt;/p&gt;

&lt;p&gt;Gradually, perhaps imperceptibly, this battle has also been coming to the internet through federated, interoperable social media like Mastodon, BlueSky and their ilk. Hop Sauna, my 2025 Ambassadorship, is intended to push this further into the commercial space, recovering our online economic communities.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://community.interledger.org/images/svy_6ItuiGXBhKncNEIYNemzs2pUbigvJMcLjp-K3Iw/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3Bpa3Ezc3Vt/dG0xbG12d2g3eGk5/LmpwZw" class="article-body-image-wrapper"&gt;&lt;img src="https://community.interledger.org/images/svy_6ItuiGXBhKncNEIYNemzs2pUbigvJMcLjp-K3Iw/rt:fit/w:800/g:sm/q:0/mb:500000/ar:1/aHR0cHM6Ly9jb21t/dW5pdHkuaW50ZXJs/ZWRnZXIub3JnL3Jl/bW90ZWltYWdlcy91/cGxvYWRzL2FydGlj/bGVzL3Bpa3Ezc3Vt/dG0xbG12d2g3eGk5/LmpwZw" alt="Draft landing page for the new Hop Sauna community webshop" width="800" height="855"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What does a webshop need to do?
&lt;/h2&gt;

&lt;p&gt;Anyone can launch a new webshop; barriers to entry are low, but barriers to success are enormous.&lt;/p&gt;

&lt;p&gt;Any commercial stack must support two key behaviours:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Discovery&lt;/strong&gt; is the opportunity to find the beings and doings of others.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Delivery&lt;/strong&gt; is the opportunity to express our being through our doings, or to enjoy the beings and doings of others. To be creative or legitimately acquire the creativity of others.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can't rely on search engines to help you. You need - in the words of Raymond Ackerman - to "go where the tea is being made". To be part of what people already do.&lt;/p&gt;

&lt;p&gt;Engaging with people where they already have community must play well with that community - creators, buyers and sellers, makers and users, readers and writers - and ensure their safety by ensuring:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Simple and ethical rules which apply to all, ensuring diversity, equity and inclusion,&lt;/li&gt;
&lt;li&gt;Respect for the privacy and protection of its community,&lt;/li&gt;
&lt;li&gt;Protection of its community from force or fraud,&lt;/li&gt;
&lt;li&gt;Clear, transparent and fair means of discovery,&lt;/li&gt;
&lt;li&gt;Simple and low-cost means of delivery.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;An accessible &lt;strong&gt;federated&lt;/strong&gt; stack must also offer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Simple ways to deploy the same stack independently,&lt;/li&gt;
&lt;li&gt;Tools for migration between stacks without losing supporters or anything purchased,&lt;/li&gt;
&lt;li&gt;Equal opportunity for discovery across a federated network of equivalent services, subject to adherence to a common set of ethical rules,&lt;/li&gt;
&lt;li&gt;Moderation tools to support enforcement of ethical rules, whether the moral subject is an individual, or an entire other server.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Why is federation necessary to compete with monopolies?
&lt;/h2&gt;

&lt;p&gt;Any &lt;strong&gt;centralised&lt;/strong&gt; stack (be it Facebook, Amazon, eBay, Uber, AirBnB or Etsy) offers both discovery and delivery. But, they are also &lt;em&gt;rent-seeking&lt;/em&gt;, in that they extract most of the value created by their creators, and do very little to uphold ethical values. Ethics are an expense and, in any case, controversy is good for "engagement".&lt;/p&gt;

&lt;p&gt;They're equivalent to feudal landlords, charging their tenant farmers a significant share of what they produce and holding to themselves the right to turf any of their tenants off the land at any time, for any reason, rendering them instantaneously destitute.&lt;/p&gt;

&lt;p&gt;Given these online spaces are entirely virtual, how did we get to a place where land is scarce, and landlords can do what they will?&lt;/p&gt;

&lt;p&gt;The short answer is that - without ethics, standards and discipline - feudalism is inevitable. Learning why, and how it came to be, is crucial to understanding how to avoid it.&lt;/p&gt;

&lt;p&gt;The early internet of the 1990s was a wild place. Along with blogs and early commercial sites were random interactive experiments with a tendency to explode, and lots and lots of porn.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Discovery&lt;/strong&gt; was largely down to curated lists, &lt;a href="https://en.wikipedia.org/wiki/Webring" rel="noopener noreferrer"&gt;webrings&lt;/a&gt;, web bookmarks, and search engines. Any of these could be open to spoofing, and so clicking on any link ran the risk of ending up on a porn site, or crashing your computer as some poorly configured website generated infinite new pages.&lt;/p&gt;

&lt;p&gt;Yahoo offered curated search results. That's right, early Yahoo hand-curated every link, which scaled about as well as you can imagine it would.&lt;/p&gt;

&lt;p&gt;Google arrived with a new algorithmic approach: weighting links by the number of inbound references. Suddenly, for a brief while, you could find things and - with discovery stabilised - &lt;strong&gt;delivery&lt;/strong&gt; could really begin.&lt;/p&gt;

&lt;p&gt;Every company started offering their own online shops. With that, they needed to ensure discovery, and the advertising market of contextual links exploded. Unfortunately, so did "search engine optimisation", referral links, and "me-too" sites.&lt;/p&gt;

&lt;p&gt;Companies with economic heft could rise above the noise, but small startups had no way through the morass. Enter Amazon, eBay, Bookings and Facebook.&lt;/p&gt;

&lt;p&gt;The challenge of selling online is discovery and delivery. If, though, you went inside a gated mall then - in exchange for a significant share of your income - you got protection and exposure.&lt;/p&gt;

&lt;p&gt;Twitter and Facebook offered their sequential feed of people and services you were actually interested in by opting in to what they posted. Amazon, Booking, Uber and Etsy allowed you to buy things you could discover using a search engine that actually delivered on what you were looking for.&lt;/p&gt;

&lt;p&gt;And again, for a while, that worked. But exploitation soon followed.&lt;/p&gt;

&lt;p&gt;As before, the problem is "noise" which includes spam, chum, fraud, and hate speech. Worse, creators are deliberately trapped. Whether by relying on centralised systems of discovery (Google, Facebook, Twitter, Instagram) or delivery (Amazon, Uber, AirBnB, Etsy), where do you go?&lt;/p&gt;

&lt;p&gt;The noise of &lt;a href="https://en.wikipedia.org/wiki/Enshittification" rel="noopener noreferrer"&gt;&lt;strong&gt;enshittification&lt;/strong&gt;&lt;/a&gt; really took off with the acquisition of Twitter in 2022 and an opportunity arose from IndieWeb's &lt;a href="https://indieweb.org/POSSE" rel="noopener noreferrer"&gt;POSSE&lt;/a&gt; (Publish (on your) Own Site, Syndicate Elsewhere) philosophy when Mastodon's &lt;a href="https://www.w3.org/TR/activitypub/" rel="noopener noreferrer"&gt;ActivityPub&lt;/a&gt; implementation took off.&lt;/p&gt;

&lt;p&gt;Federation means that interoperable websites share a common way of communicating and sharing information. You can finally &lt;strong&gt;discover&lt;/strong&gt; and curate a community. More importantly, federation returned moderation decision-making to small communities.&lt;/p&gt;

&lt;p&gt;The rejoinder from the centralised stacks is that Mastodon is tiny, so why would you bother, but that's a bit like complaining that your favourite coffee shop only seats 20 while the huge department store can accommodate millions. Is that what you &lt;em&gt;want&lt;/em&gt; from a café?&lt;/p&gt;

&lt;p&gt;And so that is the task before me as I continue to build out Hop Sauna. A webshop that not only uses the open payments protocols to reduce the costs of exchange, but also offers communities an opportunity to moderate themselves while not losing the opportunity to be discovered.&lt;/p&gt;

&lt;p&gt;I would love to hear from you … what features and requirements do you have from a community-moderated and federated webshop?&lt;/p&gt;

</description>
      <category>ilfambassadorreport</category>
      <category>tech</category>
      <category>engineering</category>
      <category>ambassadors2025</category>
    </item>
    <item>
      <title>Hop Sauna, a social marketplace framework - introduction and roadmap</title>
      <dc:creator>Gavin Chait</dc:creator>
      <pubDate>Sun, 13 Apr 2025 13:51:58 +0000</pubDate>
      <link>https://community.interledger.org/hopsauna/hop-sauna-a-social-marketplace-framework-introduction-and-roadmap-2p9b</link>
      <guid>https://community.interledger.org/hopsauna/hop-sauna-a-social-marketplace-framework-introduction-and-roadmap-2p9b</guid>
      <description>&lt;p&gt;The online new is no longer absorbed into society with the unquestioning rapture of the 1990s. Neither should it be, especially when it comes to new ways to make and receive payments.&lt;/p&gt;

&lt;p&gt;Low-cost, low-fee transactions are not a "solved" problem in federated online communities. Every community server raises funds using PayPal, Patreon or various other "tip" portals rather than integrating payments directly into their systems, forfeiting significant fees along the way. Creators still sell on Amazon, or other centralised portals, while promoting their work via multiple social channels. And little of that is available to creators working and living in the global South.&lt;/p&gt;

&lt;p&gt;Nothing here is connected or integrated. All of it costs more than it needs to.&lt;/p&gt;

&lt;p&gt;The logic of open payments is that instead of every website using the extensive banking infrastructure of credit cards and an authentication process involving multiple fee-charging intermediaries, payments are instead made via interoperable digital wallets. Individuals manage cash in and out of their wallets in whatever ways their service-provider supports.&lt;/p&gt;

&lt;p&gt;The protocol for interacting with these wallets uses the open payments architecture, and each website must then manage interaction with these APIs. That often involves a lot of duplicated boilerplate code, not just at the transaction level, but also in defining and managing products and fees, authenticating payments are received, and then acting on that authentication.&lt;/p&gt;

&lt;p&gt;This is tedious even with mature and well-documented payment libraries, but in a new protocol can be confusing, frustrating, and a barrier to adoption. Such barriers - if the incentive is sufficient - often produce new centralised intermediaries to act as an interface to that complexity. Best to get in early with an open source alternative.&lt;/p&gt;

&lt;p&gt;The purpose of the Interledger Foundation Ambassadorships is to support early-stage efforts at building bridges into the adoption and use of the open payments protocols. My Ambassadorship is all about enhancing accessibility to a technical protocol that most shouldn't need to know about to experience value from it.&lt;/p&gt;

&lt;p&gt;Putting new payment systems into use is less about telling people, than putting it where they most need it as simply as possible.&lt;/p&gt;

&lt;p&gt;My project, &lt;strong&gt;Hop Sauna&lt;/strong&gt;, is an open-source template stack ready for custom development of community-moderated Open Payments-enabled web shops, including a base server and client, with documentation, to support rapidly creating new types of federated commercial social applications.&lt;/p&gt;

&lt;p&gt;My technical deliverables are:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Open Payments web shop template stack.&lt;/li&gt;
&lt;li&gt;Open Payments Python SDK and template components.&lt;/li&gt;
&lt;li&gt;A dedicated documentation site for the template.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The first step along the way is a &lt;a href="https://codeberg.org/whythawk/base-fastapi-nuxt-project" rel="noopener noreferrer"&gt;base template stack&lt;/a&gt;, which is already available for use, along with all the documentation required to develop and extend it. &lt;/p&gt;

&lt;p&gt;This foundation will become Hop Sauna, which will integrate the Open Payments API, along with full digital product and purchase management. The objective is that sellers add their wallet / API keys and then the stack manages everything for them:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Digital product creation, registration, and pricing (including multiple currencies),&lt;/li&gt;
&lt;li&gt;Purchase process between service providers (wallet services) for seller and buyer,&lt;/li&gt;
&lt;li&gt;Payment authentication and administration for the seller,&lt;/li&gt;
&lt;li&gt;Digital product distribution for the buyer.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The template manages an exchange, authenticates that exchange and then approves distribution. The specific nature of what is distributed, and how, is a factor for the developer to build. It is their unique "product". Developers will not have to implement any part of the product or payments process.&lt;/p&gt;

&lt;p&gt;Effectively, it will be a foundation to many of the required coding challenges in the server and client, permitting standardised exchange of digital goods. &lt;/p&gt;

&lt;p&gt;Towards the end of my Ambassadorship, I will begin looking to the next phase of my work, which is ensuring that the stack supports the needs of creators. I will run a small creator's workshop where collaborators will discuss their particular requirements and allow me to ensure that the stack is able to fulfil these needs.&lt;/p&gt;

&lt;p&gt;If you want to get involved, I will need code reviewers, and - especially for the open payments SDK - technical collaborators to speed up development.&lt;/p&gt;

&lt;p&gt;If you have any questions or suggestions, please get in contact.&lt;/p&gt;

</description>
      <category>ilfambassadorreport</category>
      <category>tech</category>
      <category>engineering</category>
      <category>ambassadors2025</category>
    </item>
  </channel>
</rss>
