UpRadio is a web application that allows you to broadcast or listen to live audio streams across the internet. The audio is streamed peer-to-peer using WebRTC (with big thanks to PeerJS).
The vision for the future of this project is much larger... but I'm still working on distilling that down to something I can write in a couple of paragraphs.
It's very early days here, but contributions are welcome. I could use the help!
Check the contributing guidelines and say hello in the matrix chat.
You'll need a Cloudflare Workers account, the wrangler cli and somewhere that's running the PeerJS Server (I'm using Heroku which was really easy).
Next, you need to create a .env file in the /ui directory. It should contain 4 key value pairs:
PEER_PATH=/peer-server
PEER_SERVER=some-peerjs-server.somewhere.com
PEER_KEY=a-secret-key-that-the-peer-server-uses
MAX_CONNECTIONS=5
PEER_PATHis configuration variable on the PeerJS Server that instructs it to serve on the given base pathPEER_SERVERis the DNS or IP of your PeerJS signalling serverPEER_KEYis the secret key used to connect to the PeerJS signalling serverMAX_CONNECTIONSis the number of connections any node in the network should accept
Next you need to copy wrangler.template.toml to wrangler.toml and add your Cloudflare Workers account details.
Lastly, you can use the Makefile to build and deploy
make install
make build
make deploy
With any luck, that'll work.
- Scots Whay Hae! for actually using the thing
- PeerJS
- Crypto-js
- Zondicons
- Hero Patterns
- identicon.js