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_PATH
is configuration variable on the PeerJS Server that instructs it to serve on the given base pathPEER_SERVER
is the DNS or IP of your PeerJS signalling serverPEER_KEY
is the secret key used to connect to the PeerJS signalling serverMAX_CONNECTIONS
is 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