Loops House

Date
Nov 3–4, 2026
Duration
24h
Participants
13
Devcon 8: Build Battle 1
Publish the link nobody can take down. Build it on Swarm.
Devcon 8 · Build Battle 1: Censorship-Free World
Build Battle 1 is a 24-hour build sprint around one problem. You build in your own public GitHub repo, and an AI judge reads your code against the brief and the rubric. It never runs the code. The checks and their point values are on the problem page, so you can see what counts as good before you write a line.
The challenge
Pick a real person whose work keeps getting taken down, like a small newsroom, a tenants' union, or a community archive. Build them something they can publish to tonight, with one link their readers can keep.
The test is simple: once your own server and domain are gone, that link still shows their latest work.
Build it on Swarm
Swarm is Ethereum's decentralised storage and communication network. Content is split into chunks and spread across many Bee nodes, so there is no single host to suspend and no single file to lock.
Free Swarm storage: get a gift card with 50 MB of free storage on Telegram: t.me/ethswarm_devcon
New to Swarm? Start with the presentation: katta-swarm.bzz.link
What's worth knowing for this battle:
- Postage stamps: you pay for storage with a postage stamp (bought with xBZZ), and the network keeps your data while the stamp lasts. The gift card covers your first 50 MB.
- Feeds: a stable address you can keep updating. This is how one link keeps showing the latest version.
- Sharing: open content through a bzz.link gateway URL, or point an ENS name at it.
- Live messaging with swarm-pubsub: swarm-pubsub gives your app live, signed, many-to-many messages from the browser or Node.js. It needs no local Bee node, no server of your own, and no database. It connects to a Swarm broker node over libp2p. Use it for anything live: breaking-news alerts, a live blog, reader chat, presence, or coordination between publishers.
- Tooling: Bee node, bee-js, create-swarm-app and swarm-cli, with TypeScript and Vite.
How swarm-pubsub fits
A channel is just an owner key plus a topic name. There are no accounts and nothing to register. The owner can publish, approve extra publishers ("seats"), or remove them. Anyone can subscribe without a key. Every message is signed, so a broker can drop messages but can't fake them.
Two things to plan around:
- Messages are not stored. A reader who isn't listening when you send misses that message. Keep the record in Swarm storage and feeds, and use pubsub only for the live layer on top. A good pattern is to publish the post to a feed, then announce its Swarm reference on a pubsub channel.
- One message holds 4 KB. For anything bigger, send a Swarm reference instead of the content itself.
Browsers need a broker with a wss:// endpoint. The package's chat example ships with a default broker you can start from. swarm-pubsub is brand new (v0.1.x), so expect rough edges and keep a fallback if it misbehaves.
You can update your entry until the deadline. Join the challenge now.
FAQ
Frequently asked questions
How does scoring work?
+
Submissions are scored by an AI judge against each problem's judging criteria. Your battle score is the difficulty-weighted average across all problems — attempting more problems earns more — and ratings update once results are finalized.
Can I work in a team?
+
Yes — the team size limits are shown on this page. Everyone on the team shares the submission and the rating outcome.
What do I need to submit?
+
A GitHub repository with your working project, plus a short walkthrough video. You can keep updating your submission until the build window closes.
Final leaderboard
3 commits2 contributorslast push Nov 3
A zero-server static dApp on Ethereum Swarm built for Bob, an independent researcher facing centralized dataset delisting. Readers get one permanent Swarm feed link that always resolves to the latest edition, with updates signed client-side in the browser.
1 commits1 contributorlast push Nov 3
2 commits1 contributorlast push Nov 3
CensorProof is a censorship-resistant publishing app built on Swarm. Publish content directly to decentralized storage, share a persistent Feed link, and update publications without changing their URL. Readers access the latest version directly through the Swarm network, without centralized hosting.
8 commits1 contributorlast push Nov 4
3 commits1 contributorlast push Nov 3
4 commits1 contributorlast push Nov 3