This is a really brilliant project, and I love that it's open source! I'm certain that for tutoring, this is a much-needed self-hosting option! When it comes to schools, I'd be curious to know how it works in practice. Having supported a lot of schools in the past year using Coding Rooms with integrated Daily.co for remote learning, I have to say that the biggest challenges have always been related to just getting video to "work" with students. From the instructor's perspective, it's just so challenging to get 30 K-12 students on the same page with audio, video, input devices, and UIs -- not to mention stuff like just getting everyone signed in or using the right link. A system (perhaps hardware-included/based) that could do that would be ground-breaking for remote learning in my opinion. This is also the reason, in addition to school policies in some cases, that instructors feel like they have to stick with what they know in situations like this.
It's also worth noting that we started by integrating Jitsi, then BigBlueButton, and finally settled with Daily.co because stability, UIs, and support were such huge issues for us with the other solutions. While Daily.co doesn't do everything perfectly, I have to say their coverage of edge cases and support has been a lifesaver scaling our product for schools.
Thanks for the kind words. Our goal is to asymptotically approach doing everything perfectly, and we really value feedback. So please let us know where we can improve and what you'd like us to add. Relatedly, sometimes we have sample code for features that aren't nicely abstracted into APIs, or which we haven't documented yet/well. So don't hesitate to ping us.
I can certainly vouch for you and your team's commitment to that level of perfection and use of feedback even during what I can only imagine was a truly unprecedented year of usage. The majority of our (relatively few) issues were small UI issues that confused students and instructors, but with the new beta of the pre-built UI I believe those have been addressed! Some of those less well documented patches have also been really useful in tuning performance for certain use cases!
This is (very unfortunately) true, and I honestly don't know people get it to work in larger school implementations. The idea behind BigBlueButton is spot on and ultimately I hope another FOSS tool can help to fill this void
It is not horizontally scalable right now, but that is not hard to implement either. You can have a look at the dogehouse project: https://github.com/benawad/dogehouse if you want to see how to horizontally scale mediasoup which is the media handler and stateful process within the servers.
I think vertical scaling will be more than enough for most of the users that are going to self-host this.
Firefox WebRTC support isn't missing anything big, but it's missing a lot of little things from the 1.0 spec that Chrome (and, increasingly, Safari) have. But, much worse from a support perspective, recent Firefox releases have been fairly likely to have WebRTC-related breaking changes and regressions.
We all try to support Firefox. But given the relative usage numbers of Firefox, Chrome/Chromium/Electron/Edgium, and Safari, it's sometimes hard to devote resources to testing and workarounds.
A speech therapist friend of mine recently lamented about the lack of good solutions for online therapy in this space, and this seems to check most of the marks. Two feature additions would make this viable and also very valuable for her use case:
- Ability to save/load different whiteboards (with multiple slides) as templates, to prepare material for the patients to fill out/work with. There might be hundreds of slides needed for one session, so setting it time and again would not be an option.
- Ability to export all (filled out) slides as jpgs or a single file pdf at once
I am definitely going to work hard on this project. I would love to hear more about what usecases you think might be missing, dont hesitate to add feature requests as issues in the repository on github when you think of something else.
Well, I'm randomly working on it, but the roadmap (at least to get to a stable version) is kind of obvious. The core features of Teams must be replicated, so that the original application should be only used for calls.
Perhaps you can say this already, but please make sure you have some moderation capabilities. As a teacher, there are occasional jokesters/pranksters to take negative advantage of screen sharing, chat, etc.
The Google (new) meeting moderation abilities are a good starting point.
There is certainly some features missing before it can be a production ready classroom tool with 25+ students, in particular having different roles and policies for the participants.
Luckily that is something that I am going to focus on implementing next.
Any plans to support pressure sensitivity in drawings? The difference in the quality of the handwriting is drastic and I avoid teaching with whiteboard tools that do not react to different stylus pressure.