Pandemy, a new viral chat / webrtc client

Pandemy
Pandemy
Pandemy
Pandemy
Pandemy

HTML5 clients features

  • chat with public/private messages + emotes
  • upload/sharing of pictures < 2Mo
  • audio/video webrtc client
  • desktop sharing in read only mode
  • clients for desktop and mobile
  • license GPLv2 (so real free software, and not industrial open source)
  • tested with Firefox and Chromium - forget IE/Edge - no interest to loose my time with microsoft
  • TODO : client translation in others languages - help wanted !
  • TODO : use a FSU server instead of the current TURN/STUN server in mesh mode, to avoid disconnections of people with slow upload bandwith - especially those connected in ADSL.

Online demo

Architecture

  • You need a Virtual Private Server in the cloud, with apache2+letsencrypt already installed and running.
  • Then you must set a STUN/TURN server to relay audio/video trafic between peers. I choose the coturn package from the Ubuntu, but any other STUN/TURNS server should work. Just remember than TURNS listen incoming connections on the TCP 5349 port, and use the UDP range from 49152 to 65535, so if you use a firewall, be aware to let these ports open !
  • Then you need the server part of Pandemy, to provide a websocket, listening on a public TCP port > 1024. This websocket will relay text messages and pictures from the chat, and text signals beetween WebRTC peers.
  • Then finally, you just need to install the Pandemy clients on your web server : one for desktops and the other for mobiles devices.
  • That's all folks !

Configuration / Help

  • The HOWTO files, in both server and client archives, will help you to configure Pandemy on your own VPS.

Download project sources

Version notes

  • 1.2
    • Add hundreds of new emotes !
    • Small bug fixes.
    • Code cleanup.
  • 1.1
    • Sharing screen in read only mode added.
    • Emotes added.
    • CSS bug correction with DarkReader.
    • CSS bug in mobile client.
    • Several others improvements.
  • 1.0
    • Initial public release.