Inspiration

We saw a lot of potential for live streaming technology to be used for positive goals: to strengthen and grow communities without physical limitations. The live, group environment incorporates a very human aspect to online content which is uniquely suited to further connections; however, most live streaming services do not prioritize positive community growth.

What it does

Using natural language processing for text classification, FriendlyLive is able to classify user-submitted comments as "toxic" or "positive/benign" in real time, prioritizing a positive environment. We also understand that our model for classification will never be perfect, which is why we also implemented a flagging system for users to mark instances where the model returned an unexpected output. These flagged comments can then be used to continue training the model with data from the application itself in order to increase its accuracy. This model and its development are key to our vision of FriendlyLive as it fundamental enables a non-toxic system at scale.

How we built it

FriendlyLive is built on NodeJS (Express for REST API, socket.io for live chat updates). The live streaming aspect is created with Twilio Live and the classification model is trained with and executed by Cohere. We are using a Microsoft Azure Web App for hosting our NodeJS app and with a domain (friendlylive.tech) from domain.com.

Challenges we ran into

We ran into many of the common small challenges with building a NodeJS full stack web app (the dreaded CORS, live sockets, networking and ports) as well as some challenges that revolve around our specific implementation: running a production version of NodeJS on an Azure Web App, handling multiple live streams concurrently through Twilio, integrating Cohere classification within the server-side socket system.

Accomplishments that we're proud of

We are proud of our completion of a full-stack application that integrates model classification. We are particularly proud of the live cloud deployment to Microsoft Azure in a production environment as well as API integration for real-time Cohere classification.

What we learned

We learned a mix of different techniques from small code snippets which alleviate problems to large-reaching ideas such as prioritizing some changes over others and working under a time crunch. Practically, we learned how to use and deploy to Microsoft Azure as well as how to integrate and handle NLP in a web app.

What's next for FriendlyLive

We envision a real future for FriendlyLive and would like to implement addition features such as better graphical interpretations of data classification, an account system, and Twilio SMS/Email notification if a specific streamer goes live (would require account system).

Better Demo https://youtu.be/WNVa0g2UjcE

Built With

Share this project:

Updates