Inspiration
I've been in a lot of Zoom calls, and sometimes the calls can get pretty laggy. I wondered if there was a way to solve this.
What it does
Instead of streaming video for video calling, AsciiStream streams ASCII art, which takes up much less space than videos.
How I built it
I used PeerJS (an open-source wrapper around WebRTC) to handle sending data between users.
Challenges I ran into
This was my first time using WebRTC, so it was difficult to grasp some concepts. I usually write a lot of synchronous code, so the asynchronous nature of JavaScript was pretty confusing.
Accomplishments that I'm proud of
I am proud of completing a project that I personally find useful and can help users connect even with poor internet service.
What I learned
I read a lot of resources online and followed a Google Codelab (https://codelabs.developers.google.com/codelabs/webrtc-web/#0) to better understand WebRTC. I learned about callbacks in JavaScript and how functions can be treated as values.
What's next for AsciiStream
Right now AsciiStream only supports one-to-one calling. It would be cool to support group calls, so it could be used in a classroom setting. Adding a color option could be useful to add more detail to videos.



Log in or sign up for Devpost to join the conversation.