Introduction
Devcon.buzz is a groundbreaking decentralized web application built on Swarm, designed to transform communication at Devcon. This innovative app offers a secure and private platform for real-time chatting, leveraging Swarm’s capabilities to decentralize all components. By providing a comprehensive conference agenda, organizing discussions by agenda points, and enabling anonymous chat, Devcon.buzz enhances the Devcon experience and fosters a vibrant community.
Technical overview
Swarm is a decentralized storage and communication infrastructure that operates as a peer-to-peer network, designed to facilitate a self-sovereign digital society. It provides a scalable, base-layer infrastructure for the decentralized internet, ensuring permissionless publication and user privacy. The decentralized nature of Swarm ensures data is resistant to censorship.
Swarm’s Bee nodes are accessed through a network of gateways that act as entry points into the decentralized storage environment. Users send HTTP requests to a Swarm gateway, which retrieves the requested data from the Swarm network, abstracting the complexities of directly interacting with a peer-to-peer protocol and allowing users to leverage Swarm’s functionalities using standard web protocols.
To make Devcon.buzz accessible to everyone, even those without any experience with Web3 or Swarm, we use familiar cloud services as an entry point to the actual decentralized mechanisms running under the hood. We went with Google Cloud’s Cloud Run service to set up a few services easily, and provide on-demand scaling for these out of the box.
We deploy three limited-scope services on Cloud Run, each with a distinct function:
- Devcon Buzz App server: Serves the Reactive client-side code and acts as the app’s entry point behind the devcon.buzz web domain.
- Light Backend: Handles essential features requiring server-side processing, like assigning unique nicknames and managing the app’s gamified elements.
- Swarm Gateway: Bridges the traditional cloud and the decentralized Swarm network.
A fourth service, an SSH Tunnel runs as a VM in Google Cloud Compute. This is a crucial component to provide a secure connection between the Swarm Gateway instances in Google Cloud and Bee nodes within the Swarm network. It wraps outgoing requests and sends them over an encrypted SSH connection to machines hosting Bee nodes.
To promote safety and respect compliance requirements of Devcon and its host country, Thailand, we have introduced an opt-in content filtering mechanism. To avoid human moderators accessing and reviewing uploaded content, we utilize AI and one of the newest open-weight LLMs, the LLama 3.2 3B. For an effective and robust solution we do this via calling the API of CloudFlare’s Workers AI.
This is the extent of components needed to run on traditional cloud service providers, limited to the minimum to be able to achieve the smoothest experience possible and simplifying onboarding for the application’s users.
All content generated through the app—comments on Devcon talks, Buzz Space chat messages, and private notes—is stored on Swarm, guaranteeing Devcon.buzz’s private, highly available, and censorship-resistant nature. And by the way, the complete agenda of Devcon as displayed in the application is loaded directly from Swarm too!
Using your own local Bee Node
If you want the truly fully decentralized experience, you will be able to run Devcon.buzz with your own Swarm Bee node either on a desktop or with a Bee node running on your mobile device. This removes the need for gateways, allowing users to upload and download their app content directly from Swarm.
With some future work it might become possible to host the Reactive app directly from Swarm. Until then, the Devcon.buzz App server or a local package will host the app’s code. Calling the Light Backend will still be needed until a decentralized compute solution could be introduced.
User Experience
Let’s have a look at the cool features of the Devcon.buzz app, what makes them work behind the scenes, and how they are built on top of Swarm’s decentralized infrastructure.
Agenda and Comments
The Devcon agenda is uploaded to Swarm and remains updatable, so any changes to the schedule can be synced even during the event. Swarm’s Feed structure makes this dynamic updating possible.
Each agenda talk has its own comment wall for users to share their thoughts. This is implemented using Swarm’s Graffiti feed mechanism, which allows multiple participants to contribute to the same feed, driven by the Comment System library.
Live Chat (Buzz Spaces)
To keep the discussion vibrant and alive, each Devcon category (Core Protocol, Layer 2s, etc.) has its own Buzz Space. For these Spaces we wanted to showcase a novel solution capable of managing live group chat in a fully decentralized manner. Two of its key components are a list of active chat participants which is maintained throughout the lifecycle of the chat, and individual user feeds for message sending.
Maintaining the list of active participants is done by one or multiple Bee nodes acting as aggregators which track the last activity per user and register new joiners to the chat on a dedicated feed. In the chat code library, there will be an option to perform the aggregation on the client-side. This can be managed by an active user selected through a round-robin mechanism, further decentralizing the process.
We will release the code libraries for the live chat and the Comment System soon, complete with documentation, so anyone can create censorship-resistant communication channels on Swarm.
Private Notes on Swarm
Devcon.buzz also enables users to write private notes, which are stored on Swarm via the Feed structure. Each note will have its unique topic, organizing them neatly under a single feed. Updates to notes keep previous versions accessible, with the latest always at the most recent index.
Conclusion
Devcon.buzz offers a powerful set of features for Devcon attendees, streamlining the conference experience with a comprehensive agenda, organized discussions, and anonymous chatting to build community. Its true strength lies in its decentralized foundation on Swarm, ensuring security and resilience.
Looking ahead, Devcon.buzz has the potential to be much more than a conference app. Its decentralized architecture makes it a valuable tool for any community seeking secure and private communication. This project exemplifies Swarm’s vast utilities and its potential to revolutionize online communication, paving the way for a future of decentralized applications that empower users while protecting their privacy and data integrity. As the technology continues to mature, Devcon.buzz and similar projects are positioned to lead the transition to a truly decentralized web.