Skip to content
/ ion Public
forked from ionorg/ion

Distributed RTC System by pure Go and Flutter

License

Notifications You must be signed in to change notification settings

schivei/ion

Repository files navigation

ION is a distributed real-time communication system, the goal is to chat anydevice, anytime, anywhere!

MITBuild StatusGo Report CardGitHub go.mod Go versionGitHub tag (latest SemVer pre-release)Docker PullsFinancial Contributors on Open Collective GitHub contributorsTwitter Followslack


Quick-Start (LOCALHOST ONLY)

NOTE: To run this example on a VPS, make sure you read the docs because WebRTC requires some open UDP ports, and ion-app-web uses LetsEncrypt, which assumes your server has a public IP with a subdomain pointed at it.

1. Run Ion Backend Services

After cloning the folder, create a docker network (we use this so ion-app-web can communicate securely with the backend):

docker network create ionnet

docker-compose up

3. Expose Ports

Ensure the ports 5000-5200/udp are exposed or forwarded for the SFU service;

4. UI (optional)

Head over to Ion Web App to bring up the front end.

The web app repo also contains examples of exposing the ion biz websocket via reverse proxy with automatic SSL.

For dev and more options see the wiki

Documentation

Architecture

arch

Roadmap

Projects

Maintainers

Contributors

Original Author: adwpc cloudwebrtc

Community Hero: Sean-Der

About

Distributed RTC System by pure Go and Flutter

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 86.5%
  • Shell 10.2%
  • Python 1.2%
  • Other 2.1%