SOFTWARE / COMMUNITY
Spectrum.
An open-source web app to run Street Epistemology spectrums online, made for Opinions sur Rue.

Key facts
- Status
- Activeas of October 2026
- Years
- 2025 – now
- Role
- Sole developer. I am a member and volunteer of Opinions sur Rue.
- Stack
- SvelteKit
- Tailwind
- Fabric.js
- PeerJS (WebRTC)
- Go
- Capacitor
- Highlight
- v1.1 (May 2026) · used about once a month by Opinions sur Rue
- Links
- Livespectrum.utile.space, my instance, open to anyone (opens in a new tab)
- Livespectrum.opinions-sur-rue.fr, the OSR instance (French) (opens in a new tab)
- CodeOpinions-sur-Rue/spectrum on GitHub (GPL-3.0) (opens in a new tab)
- DownloadAndroid APK (debug build, GitHub releases) (opens in a new tab)
- VideoA spectrum run by Opinions sur Rue (YouTube, in French) (opens in a new tab)

Why I built it
A spectrum is an adaptation of Street Epistemology: participants position themselves on a line to show how much they agree or disagree with a claim, and then they talk about it.
For long, the easiest way to run one online was a drawing tool like Miro, Google Drawing or Excalidraw, next to a voice call. Everybody has the rights in these tools, so we often moved or deleted someone else’s pellet by mistake. You also go back and forth between the drawing and the call to move or to unmute yourself, and most tools ask you to sign up first.
So I decided to make a dedicated software. I made it first for Opinions sur Rue (OSR), a French non-profit promoting Street Epistemology, where I am a member and volunteer.
What it does
You start a spectrum, copy the private link and send it to the participants: 2 to 6 people. Everyone controls only their own pellet.
The chat keeps the history of the spectrum: positions, new claims and messages. There are also voice calls, emoji reactions and raise hand.
A streamer mode adapts the screen for sharing, and the app can read a YouTube, Twitch or TikTok live chat to show the average vote of the viewers.
It is in English and French. There is no login, and nothing is stored.
How it’s built
The front end is SvelteKit with Tailwind, and the spectrum itself is drawn with Fabric.js. Voice calls are peer to peer with PeerJS (WebRTC). A small Go back end keeps the rooms in memory only, so nothing is stored, and listens to Twitch, YouTube and TikTok live chats for the audience vote.
The Android app is built with Capacitor. The code is open source, so anyone can run their own instance.
Where it is now
Version 1.1 (May 2026) added an Android app, spectrums with 3, 5, 7 or 9 slices, a welcome screen for first-time users, and more tools for the host. The Android app is an APK on GitHub, not on a store.
Opinions sur Rue uses it about once a month at least. I didn’t set up any analytics, so I am a bit blind on the other users.
If I were to do it today, I would go more in the direction of Excalidraw and Miro: a full-screen canvas, with the information as panels. It would be easier to make responsive, and it would open the door to features like writing notes together during the spectrum.