Hacker News new | past | comments | ask | show | jobs | submit login

Congrats on reinventing your baby (again) and props for making it free during this pandemic.

Can you shed any light on what WebRTC server you use? ie. Jitsi, Janus, etc.

This is HN after all - be great to get a nutshell description of the tech stack and after all your experience at iTeleport, Screenhero, Slack, etc. the things you've learned from a technology and even bootstrapping/product market fit standpoint?




Sure!

WebRTC server: Daily (primary), and Twilio (secondary)

There’s no shortcut to the performance side of things, so we had to do a lot of custom work on Mac, Windows and Linux to get screen sharing to be super fast. The high level bit there is the boring-but-correct advice: measure everything, start with the biggest bottleneck, optimize, repeat.

The desktop apps follow a Slack approach (with a slight twist). Like Slack, we use Electron, but in our case, we’ve heavily modified it to make screen sharing super fast. We then use the standard Electron model to have main & renderer processes. The renderer process fetches the UI from our website (hosted on Firebase).

Almost everything (other than our custom node module) is in a monorepo. Even our modifications to Electron are stored as patch files, which just makes it easy to keep things aligned between our app and our modifications to Electron.

Our website/webapp (they are one and the same) are built on Ionic/Angular (we started before Ionic supported React). We used Ionic because I didn’t want to have to create new different UIs for each platform — I think the user is served by having a low cost product where the effort is spent mainly on performance and quality, rather than a slightly different UI for each different platform (which has significant cost). We’ve tried to maximize code re-use wherever possible, which is how a 2 person engineering team was able to build this product (granted, it took almost an entire year, or more if you count the project we pivoted from).

Happy to dive into details if you’d like!




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: