An open API service indexing awesome lists of open source software.

https://github.com/ryanrolds/club

Web RTC video conferencing service.
https://github.com/ryanrolds/club

golang ice-server react signaling-server videos web-audio-api web-rtc webaudioapi webrtc

Last synced: 25 days ago
JSON representation

Web RTC video conferencing service.

Awesome Lists containing this project

README

          

# Club

![Travis Build Status](https://travis-ci.org/ryanrolds/club.svg?branch=master)

WebRTC video chat application written in JS and Go.

## Todos

* [DONE] Propagate "leaves" and update client to remove peers/videos that left
* See if there are audio options that can be implemented - https://github.com/ryanrolds/club/issues/10
* Create grid UI using Material UI - https://github.com/ryanrolds/club/issues/1
* Add mute buttons for self and other users
* Add video off button for self
* Add leave button and join button
* Implement multiple rooms
* Implement join password for rooms
* Decide if we should switch WebSocket and server interactions to channels
* Create UI for providing room ID and password (if passworded room)
* Get ICE Server(s) from env var
* Get ICE Servers (STUN/TURN) from successful join response (don't store in client)

## Setup

Requires Go 1.14+ and Node 12+.

```
make install
```

## Running

Each service can be started seperately with `make run` in the `frontend` and `golang` directories. Otherwise, from the root both services can be started using Docker Compose:

```
make run
```

For extra debugging information use `make run-debug` in the service's directory.

Open http://localhost:3000 for React Client and http://localhost:3001 for the signaling server and examples.