The decentralized web is evolving rapidly, bringing with it the need for scalable, censorship-resistant multimedia solutions. To support developers building these next-generation experiences, we are thrilled to announce the release of the first version of our Multimedia Middleware libraries.
These libraries are specifically designed to facilitate the development of decentralized multimedia and social networking applications on the Swarm infrastructure. They address the growing demand for censorship-resistant platforms by providing cost-effective and scalable building blocks for developers. Our broader aim is to drive mass adoption of the Swarm protocol by making it easier for developers to create on-demand and streaming multimedia applications as well as social media platforms.
Developed as part of Solar Punk’s Fellowship with the Swarm Foundation, these libraries deliver unstoppable, censorship-resistant multimedia solutions, including group chat and audio/video streaming. Released as NPM packages and written in vanilla JavaScript, they ensure broad compatibility across a variety of JavaScript frameworks.
Libraries Released
The initial release includes the following libraries:
Audio-Video Live Streaming Library
This library enables media streaming and playback over Swarm and manages live audio/video streams by utilizing Swarm Feeds. It is compatible with any browser that supports the WebM format.
- NPM package: @solarpunkltd/swarm-stream-js.
- Code repository github.com/Solar-Punk-Ltd/swarm-stream-js and an
- Example implementation: github.com/Solar-Punk-Ltd/swarm-stream-react-example.
Live Group Chat Library
The live group chat library facilitates real-time messaging over Swarm using the GSOC (Graffiti Several Owner Chunks) feature. It leverages multiple nodes for improved performance.
- Main GSOC nodes handle incoming messages
- Writer nodes write messages to Swarm Feeds
- Reader nodes load messages.
Other notable features include tracking present users via keep-alive messages and a mechanism to prevent spam.
- NPM package: @solarpunkltd/swarm-chat-js
- Code repository: github.com/Solar-Punk-Ltd/swarm-chat-js
- Example project: github.com/Solar-Punk-Ltd/swarm-stream-react-example
Comment System Library
This library supports dynamic comment walls on Swarm by using Swarm Feeds to write comments at appropriate indexes for individual or range-based access.
- NPM package @solarpunkltd/comment-system
- Core codebase: github.com/Solar-Punk-Ltd/comment-system
- UI code repository github.com/Solar-Punk-Ltd/comment-system-ui, including a web widget for HTML embedding and a React component for seamless integration with React applications.
How Developers Can Build on Swarm
These libraries can be used to create a wide range of decentralized multimedia applications, such as:
- Social Media Platforms: Build censorship-resistant platforms where users can post text, audio, and video content using the chat and streaming libraries, while enabling them to comment with the Comment System.
- Streaming Services: Create live streaming and on-demand video platforms that are resistant to censorship, allowing creators to distribute content without platform restrictions and monetize it directly.
- Metaverse Environments: Utilize the libraries as building blocks to create immersive metaverse experiences that require real-time communication, media streaming, and comment functionality.
By using these libraries, developers can significantly reduce development costs and time-to-market for customized social media and multimedia platforms. These tools facilitate the creation of diverse applications, contributing to the growth of the Swarm ecosystem. As the demand for storage increases in the Swarm network, it will further strengthen the network’s overall value and drive sustainable growth.
Ready to Build the Future?
Future enhancements to these libraries will include additional chat and comment features, such as message threads and likes. The streaming library will also undergo continuous evolution to ensure ease of use and provide top-notch performance for decentralized media applications.
Our measure of success lies in the adoption of these libraries by developers looking to build performant, unstoppable, and censorship-resistant applications. Explore these libraries, join our developer community, and let’s work together to bring your unique Web3 experiences to life!
