Skip to content

Commit

Permalink
Updating readme to add a descriptive project blurb (ionorg#351)
Browse files Browse the repository at this point in the history
  • Loading branch information
leewardbound authored Aug 6, 2020
1 parent 898e5ab commit fe1c0b7
Showing 1 changed file with 17 additions and 3 deletions.
20 changes: 17 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,30 @@

<br />

## Distributed Real-time Communication System

+ **ION** is a secure, self-hosted [WebRTC](https://webrtc.org/) video conferencing [SFU (what is an SFU?)](https://testrtc.com/different-multiparty-video-conferencing/), that you can host today in the cloud or on-premise.
+ This **ION** repository contains the backend cluster services, so you also need to deploy the [web app](https://github.com/pion/ion-app-web) or install a [flutter client for web, desktop or mobile](https://github.com/pion/ion-app-flutter)
+ **ION**'s mission is to deliver world-class tools for creating communication systems, and many people build their projects on top of it:
+ [**ION** Cluster](https://github.com/pion/ion) (This project!) is composed of two services [`biz` + `ISLB` (see glossary)](docs/glossary.md) and uses `NATS`, `etcd` and `redis` as databases to administer room membership, manage text chat, verify JWT authentication and assign clients to the proper SFU in a multi-datacenter architecture. **ION** Cluster also builds its own version of `ion-sfu` binary, which is lightly adapted to use `NATS-protoo` for signaling (which is how `biz` and `ISLB` trade messages internally).
+ [`ion-sfu` (external)](https://github.com/pion/ion-sfu), which handles WebRTC streams, can be used as a standalone SFU for designing custom chat experiences or implementing your own scaling architecture. `ion-sfu` is equally capable of forwarding Video, Audio and DataChannel tracks, and can handle arbitrary non-media data transport.
+ [`ion-avp` Audio/Video Processing](https://github.com/pion/ion-avp) (WIP) is a sidecar utility for running realtime AV processing jobs, including `write-to-disk`, `ffmpeg` and `openCV`
+ *`ion-live` LIVE node (planned)* - A feed streaming gateway for supporting publishing to and from SIP/RTMP/HLS/RTSP endpoints
+ All built with [pion](https://pion.ly) and [golang](https://golang.org/), **ION** is [fast and efficient](docs/production/stress_test.md)
+ **ION** is [a young project](https://github.com/pion/ion/projects/2), under active development; some people run **ION** in production, but it's not for everyone (yet)
+ **ION** is a community effort and relies on volunteers like you and me!


## ❤️Sponsor to help this awsome project go faster!🚀
(https://opencollective.com/pion-ion)

You can vote for feature if you are a sponsor.

Features: https://github.com/pion/ion/projects/1
Features: https://github.com/pion/ion/projects/2

## Quick-Start (*LOCALHOST ONLY*)

*NOTE:* Do not attempt to run this example on a VPS. Make sure you [read the docs](docs/production); WebRTC requires some specific network configuration for the SFU service (depending on your host), and the JavaScript `GetUserMedia()` API can only request camera access on pages with SSL (or `localhost`). If you are not running on `localhost`, you MUST configure networking for SFU and enable HTTPS for `ion-app-web`.
*NOTE:* Do not attempt to run this example on a VPS, it only works on `localhost`. Make sure you [read the docs](docs/production); WebRTC requires some specific network configuration for the SFU service (depending on your host), and the JavaScript `GetUserMedia()` API can only request camera access on pages with SSL (or `localhost`). If you are not running on `localhost`, you MUST configure networking for SFU and enable HTTPS for `ion-app-web`.


#### 1. Run Ion Backend Services
Expand Down Expand Up @@ -75,7 +89,7 @@ For dev and more options see the wiki

## Roadmap

[Projects](https://github.com/pion/ion/projects/1)
[Roadmap to 1.0](https://github.com/pion/ion/projects/2)

## Maintainers

Expand Down

0 comments on commit fe1c0b7

Please sign in to comment.