cleanyourtv-app
A community-built phone app for Clean Your TV: clean up an Android TV from your phone. No laptop, no coding agent, nothing uninstalled.
Use TensorFlow.js and AWS AppSync to get a real-time aggregation of your audience's facial expressions. Create a room, share the link, and watch the crowd react.
OtherGitHub @GantManOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
Repository information has not been collected yet.
No updates detected yet. GitHub releases will appear here.
Real-time facial expression gathering
Translation pending
Taken from the repository README
Loading the full README.
Read the full README ↗This app uses face-api to gauge your facial expression, and then sends all faces in a particular URL or (room) to a "Watch" page. The watch page summarizes all the faces to a single Victory Pie chart.
Live at enjoyingthe.show · Watch the talk on YouTube
https://enjoyingthe.show/watch/<room-name> for a live pie chart of the room's mood.https://enjoyingthe.show/room/<room-name>. Each person allows webcam access; expressions are detected in their browser and only the emotion word is sent.scripts/prerender.js) so search engines and LLM agents see real content without running JavaScript./room/*. Model weights are served from public/.amplify/ holds the schema), hosted on AWS Amplify Hosting.public/llms.txt, sitemap.xml, JSON-LD structured data and Open Graph tags for discoverability.npm install
npm run dev # http://localhost:3000
npm test
npm run build # outputs dist/ with the prerendered homepage
Amplify Hosting builds every push to master using amplify.yml (frontend only: npm ci && npm run build, publishing dist/). The backend is already deployed and is no longer pushed from CI.
Single-page-app rewrites live in the Amplify console: everything that isn't a static file rewrites to /index.html (200).
The site authenticates to AppSync with a public API key (src/aws-exports.js). AppSync keys expire after at most 365 days, which is what took the site down in 2023. infra/renew-api-key.sh installs a small Lambda plus a monthly EventBridge rule that keeps pushing the key's expiry out a year. Re-run it from AWS CloudShell any time; it is idempotent.
If the key ever does lapse, create a new one and update src/aws-exports.js:
aws appsync create-api-key --api-id f6gwcwcbmbazflkwwr3h6uypne \
--expires $(( ($(date +%s) + 364*86400) / 3600 * 3600 ))
To stand up your own backend, install the Amplify CLI (npm i -g @aws-amplify/cli), run amplify init and amplify push to create the AppSync API from amplify/backend/api/facefun/schema.graphql, then point src/aws-exports.js at it.