{"id":15576237,"url":"https://github.com/ct83/hemuer","last_synced_at":"2025-09-16T18:31:22.295Z","repository":{"id":47887247,"uuid":"241031356","full_name":"CT83/Hemuer","owner":"CT83","description":"An AI Tool to record expressions of users as they watch a video and then visualize the funniest parts of it!","archived":false,"fork":false,"pushed_at":"2023-01-05T09:58:45.000Z","size":95943,"stargazers_count":23,"open_issues_count":6,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-12-29T22:54:28.871Z","etag":null,"topics":["ai","bootstrap","datavisualisation-website","datavisualization","deep-learning","emotion-detection","emotion-recognition","facial-expression-recognition","facial-landmarks","facial-recognition","javascript","nodejs","rabbitmq"],"latest_commit_sha":null,"homepage":"https://hemeur.herokuapp.com/","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CT83.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-02-17T06:00:39.000Z","updated_at":"2022-09-12T17:19:21.000Z","dependencies_parsed_at":"2023-02-04T00:02:15.658Z","dependency_job_id":null,"html_url":"https://github.com/CT83/Hemuer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CT83%2FHemuer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CT83%2FHemuer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CT83%2FHemuer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CT83%2FHemuer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CT83","download_url":"https://codeload.github.com/CT83/Hemuer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":233283688,"owners_count":18652865,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","bootstrap","datavisualisation-website","datavisualization","deep-learning","emotion-detection","emotion-recognition","facial-expression-recognition","facial-landmarks","facial-recognition","javascript","nodejs","rabbitmq"],"created_at":"2024-10-02T18:44:10.537Z","updated_at":"2025-09-16T18:31:12.562Z","avatar_url":"https://github.com/CT83.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Hemuer-AI : Laugh when everyone laughs, smile when everyone smiles!\n### [View Live Version!](https://hemeur.herokuapp.com/) - https://hemeur.herokuapp.com/\n### [Read the Blog!](https://dev.to/rohansawant/i-made-an-ai-tool-to-detect-your-facial-expressions-while-you-watch-a-video-4g4n)\n\n\nHemeur is an AI Tool to record facial expressions of users as they watch a video and then visualize the most funny parts of it!\n\nIt watches users as they watch a video, and logs when the users smile. \n\nInsights can be gathered from collected data!\n\n## Architectural Overview\n\n- Frontend - **face-api.js** in **TensorFlow.js**, **JavaScript** and **JQuery**, **BootStrap**\n- Backend - **[NodeJS Express](https://expressjs.com/)**, **mongoose** and **amqplib** \n- Database - **[MongoDB](https://www.mongodb.com/)**\n- Message Queue - **RabbitMQ** on **CloudAMQP**\n- Hosting - **[Heroku](https://www.heroku.com/)** - Free Tier\n- Local Development - **[Docker](https://www.docker.com/)** and **[Docker Compose](https://docs.docker.com/compose/)**\n\n![](https://github.com/CT83/Hemuer-AI-Expression-Detector/blob/master/public/images/hemuer-arch-white.png?raw=true)\n\n## Working\n\n### 1. Camera detects the expression of the viewer\n\n​\t**face-api.js** with **TensorflowJS** detects the expressions, sends a POST to the backend.\n\n### 2. Write expressions to MQ\n\n​\t**NodeJS** writes the expressions to **RabbitMQ**\n\n### 3. Write expressions to the database\n\n​\tData from the **MQ** is now moved over to the database for storage and popped off the queue.\n\n### 4. Insights are generated from the collected data\n\n​\tThe expressions and their positions in the video are noted down, and visualized in the UI. \n\n## Features\n\n\u003e Screen **jiggles** when you **giggle**!\n\u003e\n\u003e Chat Panel, **pops** every time someone laughs (or **talks**)\n\u003e\n\u003e Links above the messages, **allow to skip** to the **funny bits**\n\n### 1. Privacy First\n\nFacial Recognition is done in the browser itself. No video ever leaves your device.\n\n### 2. Scalable\n\nHemuer, is powered by **RabbitMQ**, this adds real-time chat support! Transactions go to the MQ first, then are stored in the database.\n\nThis keeps things up and running even during high traffic!\n\n### 3. Data Driven\n\nThe [**Stats**](https://hemeur.herokuapp.com/stats) page displays Smiles vs their Position in Video.\nThis can be used to find, seek and skip to the funniest bits of the video.\n\n### 4. Open Source\n\n*This is where I nag you for stars*... 😪\nCan I get a [star](https://github.com/CT83/Hemuer-AI-Expression-Detector)?\n\n## Future Scope \n\n* A **Chrome Extension** for YouTube?\n*  A Plugin for Streaming Services to analyze how people react to their content?\n* A Tool for **Focus Groups** and **Scientific Studies**?\n* *Something creepy straight out of 1984?*\n\n## Getting Started\n\n### Prerequisites\n\n* Docker and Docker Compose needs to be installed on your machine\n\n### How to run?\n\n1. `docker-compose up --build`\n2. Visit http://localhost:3000/\n3. Smile. 🙂\n\n### Production Deployment\n\n1. Deploy the NodeJS App on Heroku\n\n   This should work right out of the box, if you follow the current repo struct.\n\n2. Create a MQ on CloudAMQP and add the as an environment variable. `AMQ_URL`\n\n3. Create a MongoDB add on for the App\n\n4. Boom! Done\n\n## License\n\nThis project is licensed under the Apache License - see the [LICENSE.md](https://github.com/CT83/Hemuer-AI-Expression-Detector/blob/master/LICENSE) file for details\n\n## Credits\n\n* [Vincent Mühler](https://github.com/justadudewhohacks/face-api.js/) for Face Recognition\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fct83%2Fhemuer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fct83%2Fhemuer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fct83%2Fhemuer/lists"}