Skip to content

π˜“π˜¦π˜’π˜³π˜―π˜ͺ𝘯𝘨 π˜ͺ𝘯 𝘭𝘰𝘸-𝘣𝘒𝘯π˜₯𝘸π˜ͺπ˜₯𝘡𝘩 π˜ͺ𝘯𝘡𝘦𝘳𝘯𝘦𝘡 π˜™π˜¦π˜₯𝘦𝘧π˜ͺ𝘯𝘦π˜₯⚑ β€” Project Submission for MongoDB Atlas Hackathon'22

License

Neilblaze/Binoculearn.AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

24 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

thumbnail-gh

Binoculearn.ai

π˜“π˜¦π˜’π˜³π˜―π˜ͺ𝘯𝘨 π˜ͺ𝘯 𝘭𝘰𝘸-𝘣𝘒𝘯π˜₯𝘸π˜ͺπ˜₯𝘡𝘩 π˜ͺ𝘯𝘡𝘦𝘳𝘯𝘦𝘡 π˜™π˜¦π˜₯𝘦𝘧π˜ͺ𝘯𝘦π˜₯⚑ β€” Project Submission for MongoDB Atlas Hackathon'22 πŸƒ

Binoculearn is a bleeding-edge smart P2P educational video conferencing web application aimed to deliver a reliable frame rate & is backed by low-latency support along with low jitter (smooth and consistent), as well as high audio quality. We do this by converting the video stream into ASCII characters on the client side and send it via WebRTC using Twilio’s video conferencing service & is fuelled by MongoDB Atlas! πŸƒ

image

πŸ’‘ Implementing video conferencing using this technique saves bandwidth bidirectionally & especially on the receiver end. This method is horizontally scalable as we can feed more users as they enter the conference.


Installing / Getting started

There are two folders, where my-app is for the front-end & server is for the backend.

Setting up Dev [Make sure .env is loaded with your own credentials]

git clone https://github.com/Neilblaze/Binoculearn.AI
cd server
npm i
npm start

Setting up Frontend

git clone https://github.com/Neilblaze/Binoculearn.AI
cd my-app
npm i
npm start

P.S.> Open in two different shells in VS code for smooth experience!


Features 🎠

  • P2P lagfree video conferencing app with ultra-low bandwidth support
  • Bleeding-edge Image Compression Algorithm
  • Horizontally Scaleble [Currently capped at 4, because of Twilio Credits]
  • Twilio Live Transcription [Stored in MongoDB Atlas]
  • P2P Messaging with Sentiment Analysis via Natural Language API
  • Generate Summary of the meeting
  • File Sharing (blob) via MongoDB Atlas
  • User Dashboard with Previous Activity Tracker
  • Minimalist UI/UX powered by ReactJS & Tailwind CSS
  • High Quality Multiplexed Audio
  • Overall Meeting Emotion Tracker
  • MongoDB Atlas as Non-SQL DB
  • Saves πŸ’° + Internet Data
  • Secure O-Auth via Firebase by Google
  • 100% GDPR compliant & SEO friendly inteface!

Privacy & Security πŸ”

Binoculearn deals with a wide range of sensitive information. In the wrong hands, this data could dramatically harm individuals. We took special efforts and considerations to ensure that our platform protects the privacy and sensitive information of all of our users making it 100% GDPR compliant!

We also made sure that all data is sent securely over the network. Binoculearn leverages the security benefits of TLS for encryption. We also encoded all of our data using Base64 encoding. Ideally, in a future iteration, we would like to encrypt all data using a more secure method.

Screenshots πŸ–ΌοΈ

Home Page [Before O-Auth] Home Page [After O-Auth]
image image
Host a Meeting Join a Meeting
image image

Description πŸ¦„

Experience a Superfast, low-latency P2P videochat even on ultra-low Bandwidth networks. Redefining the communication gap, Binoculearn is a MIT licensed open-sourced project made for students, by the students & will be Free Forever! ⚑

Recording

☝️ In the above Gif, Gaurang can been seen in ASCII showing the demo.

On top of the bandwidth-saving functionality, we also offer educational and content-moderation tools like Sentiment Analysis via Google Cloud's Natural Language API for session chat QnA and our custom Trained ML model deployed on GCP for Meeting Summarization.

image

These features allow both the educators and students to maintain decorum in the meeting and also have follow-up material to retain information about the meeting!

License βš–οΈ

Distributed under the MIT License. See LICENSE.txt for more information.

How we built it βš™οΈ

First and foremost, it is Crafted with πŸ’™. The whole process can be broken into the following points :-

  • ➀ ReactJS, Redux + Tailwind CSS on the frontend
  • ➀ Express.js, Node.js, Sockets, WebRTC, Twilio Live on the backend

image

  • ➀ Prisma for connecting the Frontend to the DMongoDB Atlas to store user Data + Logs
  • ➀ External services like Twilio, GCP Natural Language API
  • ➀ GitHub as CI/CD and Vercel for Deployment

image

QnA model Architecture BERT: Summarizer Architecture
image-172.png image-173.png

➀ Prisma Schema for MongoDB Atlas: image


Conclusion 🐣

It has been all fun, & I would love to thank my buddies @subhamX & Gaurang for helping me, & Special thanks goes to @stanimiravlaeva, @mlynn & @joel__lord πŸ™Œ. And as always, thank you #DEV #DEVCommunity & #MongoDB for hosting this hackathon! πŸ’š

Update ⚠️ β€” We ran out of credits, hence API credentials have been revoked! If you want to run the same on your local, use your own credentials.

About

π˜“π˜¦π˜’π˜³π˜―π˜ͺ𝘯𝘨 π˜ͺ𝘯 𝘭𝘰𝘸-𝘣𝘒𝘯π˜₯𝘸π˜ͺπ˜₯𝘡𝘩 π˜ͺ𝘯𝘡𝘦𝘳𝘯𝘦𝘡 π˜™π˜¦π˜₯𝘦𝘧π˜ͺ𝘯𝘦π˜₯⚑ β€” Project Submission for MongoDB Atlas Hackathon'22

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published