The Interledger Community 🌱

Cover image for Waasabi live event framework — Grant Report #1
Flaki for Waasabi

Posted on • Updated on

Waasabi live event framework — Grant Report #1

Waasabi's idea first formed in March 2020. As an avid conference-goer and organizer I, too, like many others, was disillusioned. Most events that have "moved online" felt like giant square expo-center-pegs, stuffed into a round internet-hole, mere pale digital reflections of a bygone era of physical attendance.

Soon enough I realized much of this was not even for lack of trying: as we ourselves first embarked on the journey of bringing about a much remote, very online RustFest experience I had to face first-hand the frustrating lack of tools for creating unique, inclusive, engaging online event experiences.

The task at hand was clear: we had to build it.

After some experimentation by late spring an early prototype provided the outline to what later that fall was to become the live streaming experience of RustFest Global: one of the largest conferences for the Rust programming language, and one truly spanning the globe, with speakers and artists spread across multiple continents, languages and timezones.

Screenshot of the webpage

The Waasabi prototype used to power the RustFest Global online conference stream experience

Project Update

Receiving a grant from Grant for the Web meant not only that we could experiment with new, unconventional funding and reward models built around Web Monetization, but has also given us a chance to continue the work well after the conference, turning the prototype powering RustFest Global's live experience into a tool that may be used by anyone and for a much wider range of use cases.

This transition is going well and we are gearing up to publishing the first edition of Waasabi, with continuous updates to follow afterwards.

Progress on objectives

In the past months tremendous progress has been made on executing on the project's initial goals. Below we will illustrate some of this progress in the context of the original objectives:

Waasabi set out to…

“Solve the "hard problems" of event streaming and allow event organizers to build custom experiences around this core”

Almost any event that tries to create their own experience will eventually face implementing video broadcasts in one way or another. Waasabi, as you will notice, is wont to stray from the "tried and true", and video streaming is a good example of this.

Waasabi supports (encourages, even!) splitting up long events into short, per-session live streams. This small change in approach has surprisingly broad implications to the attendee experience! On the one hand, it allows for immediate publishing individual sessions for on-demand viewing (we simply call these "Replays") right after the live session has concluded — this makes events much more inclusive, especially on a global scale, as everyone can "adjust" the conference to their own schedules, instead of aligning with whatever the broadcast schedule mandates.

Ever wished for a conference where any & all sessions show up *instantly* in a Replay box after they aired, to be re(?)watched anytime, even if you just grabbed your ticket halfway through the event?

I did.

So I built it. 🙈

Probably my favorite @RustFest Global feature. 💖

— flaki (@slsoftworks) November 7, 2020

Another interesting implication of this change is that the breaks between sessions become a space we can fill with valuable, even interactive content. Whether it's generative art, interactive sponsor experiences or an embedded experience dedicated for connecting and mingling, the live stream gives way for other custom experiences, reclaiming its rightful prime real estate on the user's screen once a new live broadcast is due.

At the very first RustFest Global pre-event: @dns2utf8 introduces us at Rust Zürichsee to playing self-isolating snake games—together! (also test-driving our new conference experience platform, stay tuned for more!)

Join the fun via Matrix: #rust-zuerisee:

— RustFest (@RustFest) November 2, 2020

“Provide flexible, extensible tools for organizers who want to experiment with alternative formats and business models”

Most commercial event platforms on the market today provide ready-made "just-add-water" experiences out of the box today. There is very little room for customization, integrations, or ways to engage with one's audience beyond what was pre-imagined by the platform's UX & design teams.

Another large chunk of events, who decided to simply opt for broadcasting their event on one of the large video streaming platforms are similarly limited: both YouTube and Twitch, two predominant providers in the space allow for very little access control over their broadcast, and do their utmost to keep revenue sources limited to and dependent on their own silos (ad revenue, subscriptions, etc.).

In either case, events have very little control over how their broadcast is presented, and who has access to it, thus it is pretty much impossible to freely experiment with a novel combination of micropayments, ticketing, sponsorships etc.

Animation showcasing the RustFest Global event stream, as the surroundings and webpage design shift to reveal one of the sponsor's look & feel while the upcoming talk presented by someone working at that sponsor company is announced

The RustFest Global live stream design subtly shifts in realtime to reveal one of the sponsors ahead of an upcoming talk

Retaining full control over the streaming experience also meant that we could offer interesting alternate ways to showcase our sponsors and allow them to engage in more meaningful ways with our audience — something that would be impossible in any of the conventional platforms. This meant that we have been able to provide value (and on this, we have received unequivocally positive feedback) to sponsors while keeping these appearances unobtrusive (e.g. instead of stuffing the live stream & recording full of distracting logos), which has been a key goal of our community-centered conference since its inception.

“Enable increased reach through more sophisticated control over content distribution and revenue sources”

Having full control of every aspect of the video streaming experience allowed us to set our own rules, even provide free & pay-what-you-can style ticket options, while still retaining appealing incentives to those who would support the conference by buying tickets. That said, when it came to Web Monetization, we had a different issue in mind that we set out to solve.

Many events today support and incentivize content submissions by acknowledging the work put into creating a talk and the effort spent on educating the community. At RustFest we paid all our artists, given stipends and video streaming hardware reimbursements to our speakers in an effort to lower the barrier of entry for participation and sharing one's art and knowledge with the community.

Very happy to have had the opportunity to speak at @RustFest as a newbie speaker - this morning was a great experience :)

— Vi (@gl4cierBlue) November 7, 2020

We decided to use Web Monetization as yet another tool that would allow the community to give back to these artists and speakers, even long after the conference is over.

Waasabi allows for any session to have its own payment pointer assigned to it

Every session at RustFest could provide its own ILP payment pointer (set by the session host or administrators) which would be active during the live broadcast of the session, as well as during any on-demand playback. This way, Web Monetization supported the creator directly, while RustFest merely provided the infrastructure and the "marketplace" to connect presenters with their audience.

Work on some of the initial objectives is still ongoing, see more information on these in the "What's next" section, as well as expect to see further updates on their progress in the coming weeks.

Key activities

Field-testing Waasabi's ideas in a realistic setting was one of our main tasks for 2020, and the RustFest Global conference provided fertile grounds for experimentation. After the conference ended, we took the distilled learnings and the prototype to create a more streamlined, more flexible tool that can be customized to fit one's own usecase.

RustFest Global

We believe RustFest Global was the first event that took advantage of Web Monetization in the online conference space. RustFest's approach was using Web Monetization as a secondary income stream for artists & presenters at the event, and on the long tail. With close to 1.000 signups, RustFest streamed over 4.000 hours of content & produced 15 hours of talks and art performances.

Alt Text

For most of our presenters, Web Monetization was completely new, and had a great reception, especially among our artists, with ~50% signing up and registering a wallet to monetize their content. Even after the conference, recordings published on Cinnamon Video, as well as those watched on the conference website would remain monetized towards the creator to provide a long tail revenue to the creator. To this date, our Cinnamon channel has seen over 600 views across all published talks and art performances.

In the post-conference survey the artists were also expressing their enthusiasm towards Web Monetization and were interested in using it in their future appearances and on their own websites, which further reinforced our suspicion that Web Monetization was especially well-suited to cater for content producers and performers in the virtual event space.

Continued adoption

Since RustFest we have spent the past months with streamlining Waasabi's offering and working slowly towards the public release & open sourcing of the first components under Bay Area Tech Club's umbrella. The various individual components of Waasabi will be released under an Apache 2.0 license, awaiting contributions on Bay Area Tech Club's GitHub page.

The components are written in a wide range of technologies — from HTML/CSS/JavaScript to Rust and a variety of frontend and backend frameworks. While for a company with a specialized team such a varied tech stack could very well be a nightmare-scenario to maintain, it is absolutely intentional here: we believe this allows contributors to pick & choose to work on parts of the Waasabi suite that they feel most comfortable in.

Screenshot of Waasabi powering the Rust Hungary meetup's online streaming infrastructure

Rust Hungary's online community meetup hosted on Waasabi


While Waasabi will be sure to power any upcoming editions of RustFest, we have also started reaching out to the first early adopters to help us test-drive the suite's offering. We are working with these communities, meetups and conferences to ensure the out-of-the box offering supports a wide range of use cases, and focusing on improving the maintainability of instances. This means both streamlining the initial configuration, as well as making sure keeping them up-to-date is as painless as possible.

Work is well underway on waasabi-init, a command line tool dedicated to provisioning a brand new Waasabi configuration, either for local development, or one that is intended for a live installation. This tool will be responsible not only for applying customizations, but selecting, installing and keeping the various components of the Waasabi suite up to date. Much of our current efforts are channeled into improving the usability and lowering the barrier of entry of a Waasabi-based setup by abstracting away much of the underlying complexity.

Waasabi installer animation

Waasabi's configurator in action


If this blog post has piqued your interest in adopting Waasabi for your community, please reach out in the contacts at the end of the article, we would love to hear from you!

Communications and marketing

While most of the work so far has taken place behind the scenes, in anticipation of the upcoming first release we have started live streaming Waasabi development — on Waasabi itself! This may unarguably feel a bit meta, but is giving us an excellent opportunity to eat our own dogfood, as well as being a useful venue for raising awareness and gathering feedback. Currently the streams are a bit ad-hoc (follow the Waasabi Matrix channel for when to look), but we should settle in for a nice cadence once we have worked out some of the kinks.

Join the Waasabi Dev Streams at!

A short, animated screen capture of the Waasabi development stream

The Waasabi Dev Stream in action!

What’s next?

We haven't yet talked about external integrations and optional components ("plugins"), so let's have a look at what's coming to Waasabi in these areas:

“Allow event organizers to tightly integrate their live events into their existing community infrastructure”

Just weeks ago the Matrix team debuted the official experience they envisioned for using the federated Matrix protocol in conjunction with online events.

Months ahead of this, in November last year we also used the Matrix network to power RustFest Global's chat experience through our own custom integration and our own Matrix server instance.

RustFest Global 2020 logo

We are working on including a cleaned up & streamlined version of this integration in the components offered by Waasabi for those who would like to use this chat system with their custom streaming experience. We are also working on plugins for other popular chat platforms, to make it even easier to connect communities across Waasabi's interface simply by selecting and configuring the right integration, available out of the box.

“A growing library of open source plugins and integrations contributed back by the community building on Waasabi”

While releasing & open sourcing the Waasabi codebase will need to take place before we can start talking about community-contributed extensions to the Waasabi software suite, we have already started laying the foundations to this through spending considerable effort on ensuring a low barrier of entry to trying, installing, using and contributing to Waasabi.

One of Waasabi's planned optional components was a "proof-of-concept" to a local transcription/captioning service, based in open data and open source software. We thought sharing the findings of this effort will deserve its own update, and thus keep an eye out for a coming update on this project in the following weeks. Check out a little teaser below of what we have in the works:

Teaser of the captioning proof of concept

A comparison between a human-generated talk transcript and one generated by our automated local captioning proof-of-concept from RustFest Global

Future development

We are also thrilled to announce that thanks to the NLnet Foundation Waasabi has been recently awarded a grant from the NGI Zero initiative!

NGI Zero

This project is still the planning/roadmapping phase but thanks to the new grant we will soon be able to start working on integrating P2P (peer-to-peer) video streaming backends as an alternative to Waasabi's current, commercial provider. We look forward to exploring technologies like HLS-over-IPFS and the recently announced PeerTube live streaming support.

What community support would benefit your project?

If the project's goals resonated with you, please consider supporting development through our Open Collective page.

If you would like to test-drive Waasabi for one of your own communities or events ahead of the public release, please let us know through any of the contacts listed below, we are always looking for feedback and early adopters who can help us improve Waasabi.

Relevant links/resources

Updated 2021.03.12: an earlier version of the post stated RustFest streamed 45.000 hours of content, this was incorrect, the correct number is around 4.400 hours, which is still half a year worth of RustFest!

Top comments (5)

creativelivingfordancers profile image
Briana Stuart

Great to read up on your project and see that you're including artists in your work. My project is called Creative Living for Dancers, where our goal is to bring professional dance artists into the digital sphere. I've recently commissioned dancers to create their own WM digital dance projects actually and I think they'd be perfect additions to online events like Rustfest . Definitely check them out in the link below if you get a chance and I'd love to connect soon!


flaki profile image

Oh my, this is wonderful Briana! I have noted this for whence we start our RustFest preparations in earnest, it would be wonderful to have some of these artists perform -- and your project sounds like a gravely needed one, given the current situation and the feedback we have been receiving from last year's event's performers, thank you for doing this and good luck! I'm always happy to chat!

creativelivingfordancers profile image
Briana Stuart

Thanks Flaki! Lets def chat soon! Briana

chrislarry profile image
Chris Lawrence

This is very exciting, would you be interested in helping us do a community call with the tool to demo and test drive?

flaki profile image

Hey Chris! Thanks, sure it would be my pleasure! I'd say there's still a lot to do this month but perhaps sometime in April we should be able to find a good time (hopefully we'll have the first beta published by then, too).