Tired of hearing about 'AI' every two seconds? See how many times you've survived the AI overload!
-
🎯 Instant Buzzword Detection: Launches in listening mode and catches the AI words you're sick of hearing. The buzzword list can't be modified currently but can be found here.
-
👻 Background Tracking: Runs silently in the background while you are using other apps or when screen is locked to keep you hunting for those AI buzzwords.
-
📊 Charts & Stats: Analyze how much AI nonsense you had to listen to.
-
🔔 Persistent Notification: Persistent notification while app is running with the ability to
pause,resume, andstopthe AI catching. -
🔒 Privacy: CatchThisAI is completely offline with no data being collected.
-
First
- Download assets using
./scripts/setup_assets.shor equivalent ways of running the bash script. - To update keywords, edit the main
.txtfiles in assets/ then run./scripts/setup_assets.sh
- Download assets using
-
Current Behavior
- On start, app launches in ASR mode and will listen for keywords and show a
persistent/stickynotification indicating so. - Main page shows daily stats only.
persistent/stickynotification has buttons for control includingstart,stop,resumeandexit.- When app is removed from recent apps stack
"swiped up", the whole app shut and no more recording is happening. - App doesn't start on device start up, but if open, will survive app
update/reinstalls.
- On start, app launches in ASR mode and will listen for keywords and show a
-
DONE
- Logic for audio processing using
record - KeywordSpotting (KWS) using
sherpa onnx, OnlineRecognizer (ASR) option usingsherpa onnx - Simple UI
- Runs in the background (as long as app is open in the background)
- Detects keywords in this
keywords.txtfile of both models - Spotted "texts" are published as the
TrackedTextin the form {String text, List keywords, DateTime timestamp} and saved in theHivedatabase - In the case of KWS,
keywordsof TrackedText is a list with single element, the same as,text - Home page keeps track of counts of keyword daily
- Apps runs in the background
- Included Stats Page
- Included Settings Page (Choose ASR vs KWS, display options, clear database, etc.)
- Logic for audio processing using
-
TODO
- Polish UI/UX
- See TODOs in files
- Cannot run in linux because of
recordand PCM format, seepubspec.yaml; maybe consider encoding - Think about trimming database box sizes after certain limit to prevent infinite growth (Do we rly need really old data?)
- Padding values, spacing in charts, etc are hardcoded numbers, shouldn't be like that




