DEV Community

Cover image for I built an AI Tool to detect your facial expressions while you watch a video!

I built an AI Tool to detect your facial expressions while you watch a video!

Rohan Sawant
Hi! I'm Rohan, a Full Stack Software Engineer, with a background of working with Deep Learning and AI, who loves to use his skills to create products that are at the intersection of all of these!
・Updated on ・2 min read

Hemuer-AI : Laugh when everyone laughs, smile when everyone smiles!

View Live Version!

Hemeur is an AI Tool to record facial expressions of users as they watch a video and then visualize the data!
Insights can be gathered from collected data!


Stats Page
Alt Text

Architectural Overview

  • Frontend - face-api.js in TensorFlow.js, JavaScript and JQuery, BootStrap
  • Backend - NodeJS Express, mongoose and amqplib
  • Database - MongoDB
  • Message Queue - RabbitMQ on CloudAMQP
  • Hosting - Heroku - Free Tier
  • Local Development - Docker and Docker Compose


  1. Camera detects the expression of the viewer
    face-api.js with TensorflowJS detects the expressions, sends a POST to the backend.

  2. Write expressions to MQ
    NodeJS writes the expressions to RabbitMQ

  3. Write expressions to the database
    Data from the MQ is now moved over to the database for storage and popped off the queue.

  4. Insights are generated from the collected data
    The expressions and their positions in the video are noted down, and visualized in the UI.


Screen jiggles when you giggle!

Chat Panel, pops every time someone laughs (or talks)

Links above the messages, allow to skip to the funny bits

  1. Privacy First
    Facial Recognition is done in the browser itself. No video ever leaves your device.

  2. Scalable
    Hemuer, is powered by RabbitMQ, this adds real-time chat support! Transactions go to the MQ first, then are stored in the database.
    This keeps things up and running even during high traffic!

  3. Data Driven
    The Stats page displays Smiles vs their Position in Video.
    This can be used to find, seek and skip to the funniest bits of the video.

  4. Open Source
    This is where I nag you for stars... πŸ˜ͺ
    Can I get a star?

Future Scope

  • A Chrome Extension for YouTube?
  • A Tool for Focus Groups and Scientific Studies?
  • Imagine as a Netflix, Hulu or Amazon Prime Video, you could pay your users X$ to consensually let you see their reactions to your content, you could have real data to decide what parts of the Comedy Special are truly funny.
  • Something creepy straight out of 1984?

Getting Started


  • Docker and Docker Compose needs to be installed on your machine

How to run?

  1. Clone the Repo from CT83/Hemuer-AI-Expression-Detector
  2. docker-compose up --build
  3. Visit http://localhost:3000/
  4. Smile. πŸ™‚

Production Deployment

  1. Deploy the NodeJS App on Heroku This should work right out of the box, if you follow the current repo struct.
  2. Create a MQ on CloudAMQP and add the as an environment variable. AMQ_URL
  3. Create a MongoDB add on for the App
  4. Boom! Done


Discussion (2)

mdhesari profile image
Mohammad Fazel • Edited

It sounds so interesting, it's a huge progress for companies in order to create more value

rohansawant profile image
Rohan Sawant Author

Thanks!! That was exactly my reaction when the idea first occurred to me, now I need to get it in front of the correct people to provide the value!

Forem Open with the Forem app