Inspiration

Difficulty students faced in online classes during pandemic

What it does

Makes online education easy for both students and teachers by letting them attend the class in a very ease manner . Insted of live streaming co-ordinate shifting takes place.

How we built it

Front-end with html and css Websocket was used for co-ordinate passing

Challenges we ran into

Initially, we started with python and Django but we had trouble dealing with javascript that was coming from the canvas API from the browser to draw on the canvas, this was due to our inexperience in software development (we found a solution afterwards which was using webpack to bundle the javascript). At that point, an easier solution was to switch to node.js. It was then easier to deal with all the javascript coming from the browser.

The next thing was to pass the co-ordinate coming from the client-side to all the other peers connected. This was a headache as the data should be passed to the server then to the users through web sockets(socket.io). It was ok in the beginning but as soon as we built custom rooms. There were so many unexpected bugs (mostly due to our poor architecture). We consistently changed our code to better versions.

Our co-ordinate passing system with socket.io was working fine with massive savings to the data consumption.

Then we had some trouble figuring out the webRTC video/audio calling feature. That was solved when we discovered a library build on top of webRTC called peerjs which had really good documentation.

Our frontend is built with bootstrap CSS3 and HTML. We thought of implementing vue.js but as there was less time so we didn’t want to waste any by building the UI also our team members knew different frameworks and libraries like vue.js, react, angular.

We have no caching system as of now ( as this is just a prototype). A caching system will enable us to have better speed and remove the problem of losing data when the page is refreshed.

We still experience some minor unexpected bugs sometimes (If this platform was made by professionals this could really be a game-changer).

Our app has an insane data consumption ratio when compared with other competitors. google meet. eg. 300MB to less than 50MB (as we don’t stream the screen)

Despite wasting time on the python side we were able to make the app in a week

Accomplishments that we're proud of

Our successful hardwork behind the making of this web app

What we learned

Problem solving aptitude

What's next for UnicornTeach

To promote it as a business product in future

Built With

Share this project:

Updates